Submission #61696


Source Code Expand

import java.util.Arrays;
import java.util.Scanner;

public class Main{

	int MAX = 1<<12, N = 1<<11;
	int[][] dat;
	
	//更新したい範囲[a, b), 現在の範囲[L, R)
	void query(int a, int b, int k, int L, int R, int X){
//		System.out.println(a+" "+b+" "+L+" "+R);
		if(R <= a || b <= L)return;
		if(a <= L && R <= b){
//			System.out.println("PLUS/ "+L+" "+R);
			dat[X][k]++;
			return;
		}
		query(a, b, k*2+1, L, (L+R)/2, X);
		query(a, b, k*2+2, (L+R)/2, R, X);
	}
	
	int get(int p, int X){
		p+=N-1;
		int res = dat[X][p];
		while(p>0){
			p = (p-1)/2;
			res+=dat[X][p];
		}
		res+=dat[X][0];
		return res;
	}
	
	void run() {
		Scanner sc = new Scanner();
		dat = new int[N][MAX-1];
//		query(0, 3, 0, 0, 1024, 0);
//		query(2, 4, 0, 0, 1024, 0);
//		for(int i=0;i<5;i++)System.out.println(get(i, 0));
		int F = 1000;
		int n = sc.nextInt();
		int x1 = 1000000, x2 = -100000, y1 = 1000000, y2 = -1000000;
		while(n--!=0){
			int type = sc.nextInt(), x = sc.nextInt(), y = sc.nextInt(), L = sc.nextInt();
			x1 = Math.min(x1, x-L+1+F);
			x2 = Math.max(x2, x+L-1+F);
			y1 = Math.min(y1, y-L+1+F);
			y2 = Math.max(y2, y+L-1+F);
			if(type==1){
				int max = y+L, min = y;
				for(int X=x-L+1;X<=x+L-1;X++){
					query(min+F, max+F, 0, 0, N, X+F);
					if(X < x)min--;
					if(x <= X)max--;
				}
			}
		}
		int res = 0;
		for(int x=x1;x<=x2;x++)for(int y=y1;y<=y2;y++)res=Math.max(res, get(y, x));
		System.out.println(res);
	}

	void debug(Object... o) {
		System.out.println(Arrays.deepToString(o));
	}

	class Scanner {
		int nextInt() {
			try {
				int c = System.in.read();
				while (c != '-' && (c < '0' || '9' < c))
					c = System.in.read();
				if (c == '-') return -nextInt();
				int res = 0;
				do {
					res *= 10;
					res += c - '0';
					c = System.in.read();
				} while ('0' <= c && c <= '9');
				return res;
			} catch (Exception e) {
				return -1;
			}
		}
		long nextLong() {
			try {
				int c = System.in.read();
				while (c != '-' && (c < '0' || '9' < c))
					c = System.in.read();
				if (c == '-') return -nextLong();
				long res = 0;
				do {
					res *= 10;
					res += c - '0';
					c = System.in.read();
				} while ('0' <= c && c <= '9');
				return res;
			} catch (Exception e) {
				return -1;
			}
		}
		double nextDouble() {
			return Double.parseDouble(next());
		}
		String next() {
			try {
				StringBuilder res = new StringBuilder("");
				int c = System.in.read();
				while (Character.isWhitespace(c))
					c = System.in.read();
				do {
					res.append((char) c);
				} while (!Character.isWhitespace(c = System.in.read()));
				return res.toString();
			} catch (Exception e) {
				return null;
			}
		}
		String nextLine(){
			try{
				StringBuilder res =new StringBuilder("");
				int c = System.in.read();
				while (c=='\r' || c=='\n')
					c = System.in.read();
				do {
					res.append((char) c);
					c = System.in.read();
				} while (c!='\r' && c!='\n');
				return res.toString();
			}catch (Exception e) {
				return null;
			}
		}
	}
	
	public static void main(String... args) {
		new Main().run();
	}
}

Submission Info

Submission Time
Task I - その味は甘くて
User nanikaka
Language Java (OpenJDK 1.7.0)
Score 50
Code Size 3218 Byte
Status WA
Exec Time 3193 ms
Memory 53176 KB

Judge Result

Set Name small large1 large3
Score / Max Score 10 / 10 40 / 40 0 / 100
Status
AC × 20
AC × 39
AC × 39
WA × 24
Set Name Test Cases
small small/case_000.txt, small/case_001.txt, small/case_002.txt, small/case_003.txt, small/case_004.txt, small/case_005.txt, small/case_006.txt, small/case_007.txt, small/case_008.txt, small/case_009.txt, small/case_010.txt, small/case_011.txt, small/case_012.txt, small/case_013.txt, small/case_014.txt, small/case_015.txt, small/case_024.txt, small/case_025.txt, small/case_026.txt, small/case_027.txt
large1 large1/case_000.txt, large1/case_001.txt, large1/case_002.txt, large1/case_003.txt, large1/case_004.txt, large1/case_005.txt, large1/case_006.txt, large1/case_007.txt, large1/case_008.txt, large1/case_009.txt, large1/case_010.txt, large1/case_011.txt, large1/case_012.txt, large1/case_013.txt, large1/case_014.txt, large1/case_015.txt, large1/case_024.txt, large1/case_025.txt, large1/case_026.txt, large1/case_027.txt, large1/large1_case_000.txt, large1/large1_case_001.txt, large1/large1_case_002.txt, large1/large1_case_003.txt, large1/large1_case_004.txt, large1/large1_case_005.txt, large1/large1_case_006.txt, large1/large1_case_007.txt, large1/large1_case_008.txt, large1/large1_case_009.txt, large1/large1_case_010.txt, large1/large1_case_011.txt, large1/large1_case_012.txt, large1/large1_case_013.txt, large1/large1_case_014.txt, large1/large1_case_020.txt, large1/large1_case_021.txt, large1/large1_case_022.txt, large1/large1_case_023.txt
large3 large3/case_000.txt, large3/case_001.txt, large3/case_002.txt, large3/case_003.txt, large3/case_004.txt, large3/case_005.txt, large3/case_006.txt, large3/case_007.txt, large3/case_008.txt, large3/case_009.txt, large3/case_010.txt, large3/case_011.txt, large3/case_012.txt, large3/case_013.txt, large3/case_014.txt, large3/case_015.txt, large3/case_024.txt, large3/case_025.txt, large3/case_026.txt, large3/case_027.txt, large3/large1_case_000.txt, large3/large1_case_001.txt, large3/large1_case_002.txt, large3/large1_case_003.txt, large3/large1_case_004.txt, large3/large1_case_005.txt, large3/large1_case_006.txt, large3/large1_case_007.txt, large3/large1_case_008.txt, large3/large1_case_009.txt, large3/large1_case_010.txt, large3/large1_case_011.txt, large3/large1_case_012.txt, large3/large1_case_013.txt, large3/large1_case_014.txt, large3/large1_case_020.txt, large3/large1_case_021.txt, large3/large1_case_022.txt, large3/large1_case_023.txt, large3/large3_case_000.txt, large3/large3_case_001.txt, large3/large3_case_002.txt, large3/large3_case_003.txt, large3/large3_case_004.txt, large3/large3_case_005.txt, large3/large3_case_006.txt, large3/large3_case_007.txt, large3/large3_case_008.txt, large3/large3_case_009.txt, large3/large3_case_010.txt, large3/large3_case_011.txt, large3/large3_case_012.txt, large3/large3_case_013.txt, large3/large3_case_014.txt, large3/large3_case_015.txt, large3/large3_case_016.txt, large3/large3_case_017.txt, large3/large3_case_018.txt, large3/large3_case_019.txt, large3/large3_case_020.txt, large3/large3_case_021.txt, large3/large3_case_022.txt, large3/large3_case_023.txt
Case Name Status Exec Time Memory
large1/case_000.txt AC 447 ms 49660 KB
large1/case_001.txt AC 447 ms 49632 KB
large1/case_002.txt AC 430 ms 49632 KB
large1/case_003.txt AC 448 ms 49628 KB
large1/case_004.txt AC 470 ms 51192 KB
large1/case_005.txt AC 480 ms 51144 KB
large1/case_006.txt AC 466 ms 51152 KB
large1/case_007.txt AC 475 ms 51148 KB
large1/case_008.txt AC 466 ms 51180 KB
large1/case_009.txt AC 479 ms 51204 KB
large1/case_010.txt AC 471 ms 51188 KB
large1/case_011.txt AC 476 ms 51144 KB
large1/case_012.txt AC 475 ms 51144 KB
large1/case_013.txt AC 479 ms 51152 KB
large1/case_014.txt AC 471 ms 51148 KB
large1/case_015.txt AC 469 ms 51148 KB
large1/case_024.txt AC 479 ms 51124 KB
large1/case_025.txt AC 464 ms 51148 KB
large1/case_026.txt AC 479 ms 51268 KB
large1/case_027.txt AC 470 ms 51152 KB
large1/large1_case_000.txt AC 3048 ms 51508 KB
large1/large1_case_001.txt AC 2799 ms 51444 KB
large1/large1_case_002.txt AC 2955 ms 51464 KB
large1/large1_case_003.txt AC 2969 ms 51460 KB
large1/large1_case_004.txt AC 3028 ms 51424 KB
large1/large1_case_005.txt AC 2948 ms 51460 KB
large1/large1_case_006.txt AC 2989 ms 51380 KB
large1/large1_case_007.txt AC 3150 ms 51528 KB
large1/large1_case_008.txt AC 3083 ms 51464 KB
large1/large1_case_009.txt AC 2944 ms 51336 KB
large1/large1_case_010.txt AC 2933 ms 51492 KB
large1/large1_case_011.txt AC 3063 ms 51396 KB
large1/large1_case_012.txt AC 2964 ms 51368 KB
large1/large1_case_013.txt AC 2955 ms 51444 KB
large1/large1_case_014.txt AC 3106 ms 51340 KB
large1/large1_case_020.txt AC 2365 ms 51468 KB
large1/large1_case_021.txt AC 2398 ms 51336 KB
large1/large1_case_022.txt AC 2419 ms 51452 KB
large1/large1_case_023.txt AC 2395 ms 51316 KB
large3/case_000.txt AC 456 ms 49628 KB
large3/case_001.txt AC 446 ms 49532 KB
large3/case_002.txt AC 463 ms 49660 KB
large3/case_003.txt AC 441 ms 49536 KB
large3/case_004.txt AC 485 ms 51192 KB
large3/case_005.txt AC 472 ms 51020 KB
large3/case_006.txt AC 480 ms 51148 KB
large3/case_007.txt AC 476 ms 51100 KB
large3/case_008.txt AC 463 ms 51144 KB
large3/case_009.txt AC 472 ms 51148 KB
large3/case_010.txt AC 470 ms 51152 KB
large3/case_011.txt AC 483 ms 51188 KB
large3/case_012.txt AC 459 ms 51144 KB
large3/case_013.txt AC 486 ms 51172 KB
large3/case_014.txt AC 482 ms 51148 KB
large3/case_015.txt AC 490 ms 51184 KB
large3/case_024.txt AC 478 ms 51148 KB
large3/case_025.txt AC 486 ms 51148 KB
large3/case_026.txt AC 481 ms 51148 KB
large3/case_027.txt AC 493 ms 51148 KB
large3/large1_case_000.txt AC 2726 ms 51472 KB
large3/large1_case_001.txt AC 3144 ms 51340 KB
large3/large1_case_002.txt AC 3173 ms 51464 KB
large3/large1_case_003.txt AC 3113 ms 51444 KB
large3/large1_case_004.txt AC 3193 ms 51340 KB
large3/large1_case_005.txt AC 3015 ms 51336 KB
large3/large1_case_006.txt AC 3142 ms 51328 KB
large3/large1_case_007.txt AC 3167 ms 51520 KB
large3/large1_case_008.txt AC 3068 ms 51332 KB
large3/large1_case_009.txt AC 3127 ms 51464 KB
large3/large1_case_010.txt AC 2929 ms 51460 KB
large3/large1_case_011.txt AC 3010 ms 51336 KB
large3/large1_case_012.txt AC 2992 ms 51508 KB
large3/large1_case_013.txt AC 2802 ms 51464 KB
large3/large1_case_014.txt AC 3067 ms 51464 KB
large3/large1_case_020.txt AC 2402 ms 51356 KB
large3/large1_case_021.txt AC 2422 ms 51312 KB
large3/large1_case_022.txt AC 2511 ms 51460 KB
large3/large1_case_023.txt AC 2466 ms 51272 KB
large3/large3_case_000.txt WA 1457 ms 52376 KB
large3/large3_case_001.txt WA 1475 ms 52304 KB
large3/large3_case_002.txt WA 1447 ms 52432 KB
large3/large3_case_003.txt WA 1522 ms 52308 KB
large3/large3_case_004.txt WA 1367 ms 52348 KB
large3/large3_case_005.txt WA 1467 ms 52372 KB
large3/large3_case_006.txt WA 1446 ms 52368 KB
large3/large3_case_007.txt WA 1516 ms 52440 KB
large3/large3_case_008.txt WA 1448 ms 52348 KB
large3/large3_case_009.txt WA 1555 ms 52372 KB
large3/large3_case_010.txt WA 1425 ms 52364 KB
large3/large3_case_011.txt WA 1470 ms 52308 KB
large3/large3_case_012.txt WA 1437 ms 52396 KB
large3/large3_case_013.txt WA 1390 ms 52340 KB
large3/large3_case_014.txt WA 1464 ms 52432 KB
large3/large3_case_015.txt WA 1481 ms 52384 KB
large3/large3_case_016.txt WA 1439 ms 52364 KB
large3/large3_case_017.txt WA 1362 ms 52352 KB
large3/large3_case_018.txt WA 1346 ms 52360 KB
large3/large3_case_019.txt WA 1374 ms 52308 KB
large3/large3_case_020.txt WA 675 ms 53176 KB
large3/large3_case_021.txt WA 657 ms 53060 KB
large3/large3_case_022.txt WA 642 ms 51360 KB
large3/large3_case_023.txt WA 640 ms 50652 KB
small/case_000.txt AC 433 ms 49668 KB
small/case_001.txt AC 435 ms 49628 KB
small/case_002.txt AC 435 ms 49632 KB
small/case_003.txt AC 443 ms 49628 KB
small/case_004.txt AC 486 ms 51152 KB
small/case_005.txt AC 500 ms 51144 KB
small/case_006.txt AC 480 ms 51148 KB
small/case_007.txt AC 494 ms 51148 KB
small/case_008.txt AC 475 ms 51148 KB
small/case_009.txt AC 479 ms 51184 KB
small/case_010.txt AC 479 ms 51148 KB
small/case_011.txt AC 474 ms 51148 KB
small/case_012.txt AC 484 ms 51152 KB
small/case_013.txt AC 475 ms 51152 KB
small/case_014.txt AC 482 ms 51184 KB
small/case_015.txt AC 474 ms 51148 KB
small/case_024.txt AC 467 ms 51152 KB
small/case_025.txt AC 463 ms 51140 KB
small/case_026.txt AC 475 ms 51148 KB
small/case_027.txt AC 490 ms 51148 KB