Submission #62686


Source Code Expand

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

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int D = 2010;
		
		int[][] hc12 = new int[D][D];
		int[][] hc3h = new int[D][D];
		int[][] hc3v = new int[D][D];
		int[][] hc3d = new int[D][D];
		
		for(int i=0; i<N; i++) {
			int type = sc.nextInt();
			int x = sc.nextInt()+D/2;
			int y = sc.nextInt()+D/2;
			int size = sc.nextInt();
			
			if(type==1) {
				hc12[y+(size-1)][x-(size-1)]++;
				hc12[y+(size-2)][x-(size-2)]--;
				hc12[y-1][x-(size-1)]--;
				hc12[y-1][x-(size-2)]++;
				hc12[y-(size+1)][x+1]++;
				hc12[y-(size)][x+1]--;
				hc12[y-(size+1)][x+(size+1)]--;
				hc12[y-(size)][x+size]++;
				hc12[y-1][x+(size+1)]++;
				hc12[y-1][x+(size)]--;
				hc12[y+(size-1)][x+1]--;
				hc12[y+(size-2)][x+1]++;
			} else if(type==2) {
				hc12[y+(size-1)][x-(size-1)]++;
				hc12[y-1][x-(size-1)]--;
				hc12[y-(size+1)][x+1]++;
				hc12[y-(size+1)][x+(size+1)]--;
				hc12[y-1][x+(size+1)]++;
				hc12[y+(size-1)][x+1]--;
			} else {
				hc3v[y+(size-1)][x+1]--;
				hc3v[y+(size-2)][x+1]--;
				hc3v[y-1][x+1]+=2;
				hc3v[y-2][x+1]+=2;
				hc3v[y-(size+1)][x+1]--;
				hc3v[y-(size+2)][x+1]--;
				
				hc3h[y-1][x-(size-1)]--;
				hc3h[y-1][x-(size-2)]--;
				hc3h[y-1][x+1]+=2;
				hc3h[y-1][x+2]+=2;
				hc3h[y-1][x+(size+1)]--;
				hc3h[y-1][x+(size+2)]--;
				
				hc3d[y+(size-1)][x-(size-1)]++;
				hc3d[y+(size-2)][x-(size-2)]++;
				hc3d[y-1][x+1]-=2;
				hc3d[y-2][x+2]-=2;
				hc3d[y-(size+1)][x+(size+1)]++;
				hc3d[y-(size+2)][x+(size+2)]++;
			}
		}
		
		for(int i=D-2; i>=0; i--) {
			for(int j=1; j<D; j++) {
				hc3v[i][j] += hc3v[i+1][j];
				hc3h[i][j] += hc3h[i][j-1];
				hc3d[i][j] += hc3d[i+1][j-1];
			}
		}
		for(int i=D-1; i>=0; i--) {
			for(int j=0; j<D; j++) {
				hc12[i][j] += hc3v[i][j] + hc3h[i][j] + hc3d[i][j];
			}
		}
		for(int i=D-2; i>=0; i--) {
			for(int j=0; j<D; j++) {
				hc12[i][j] += hc12[i+1][j];
			}
		}
		for(int i=D-1; i>=0; i--) {
			for(int j=1; j<D; j++) {
				hc12[i][j] += hc12[i][j-1];
			}
		}
		for(int i=D-2; i>=0; i--) {
			for(int j=1; j<D; j++) {
				hc12[i][j] += hc12[i+1][j-1];
			}
		}
		
		int max = 0;
		for(int i=0; i<D; i++) {
			for(int j=0; j<D; j++) {
				max = Math.max(max, hc12[i][j]);
			}
		}
		System.out.println(max);
	}
}

Submission Info

Submission Time
Task I - その味は甘くて
User a2stnk
Language Java (OpenJDK 1.7.0)
Score 150
Code Size 2454 Byte
Status AC
Exec Time 1316 ms
Memory 125748 KB

Judge Result

Set Name small large1 large3
Score / Max Score 10 / 10 40 / 40 100 / 100
Status
AC × 20
AC × 39
AC × 63
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 799 ms 88872 KB
large1/case_001.txt AC 780 ms 88876 KB
large1/case_002.txt AC 812 ms 88864 KB
large1/case_003.txt AC 796 ms 88900 KB
large1/case_004.txt AC 802 ms 89340 KB
large1/case_005.txt AC 818 ms 89376 KB
large1/case_006.txt AC 821 ms 89528 KB
large1/case_007.txt AC 813 ms 89588 KB
large1/case_008.txt AC 843 ms 89544 KB
large1/case_009.txt AC 809 ms 89252 KB
large1/case_010.txt AC 807 ms 89460 KB
large1/case_011.txt AC 782 ms 89524 KB
large1/case_012.txt AC 801 ms 89544 KB
large1/case_013.txt AC 794 ms 89644 KB
large1/case_014.txt AC 818 ms 89520 KB
large1/case_015.txt AC 834 ms 89548 KB
large1/case_024.txt AC 809 ms 89320 KB
large1/case_025.txt AC 813 ms 89280 KB
large1/case_026.txt AC 801 ms 89612 KB
large1/case_027.txt AC 814 ms 89380 KB
large1/large1_case_000.txt AC 1077 ms 125748 KB
large1/large1_case_001.txt AC 1096 ms 124832 KB
large1/large1_case_002.txt AC 1114 ms 124772 KB
large1/large1_case_003.txt AC 1115 ms 125040 KB
large1/large1_case_004.txt AC 1074 ms 124664 KB
large1/large1_case_005.txt AC 1097 ms 125036 KB
large1/large1_case_006.txt AC 1316 ms 124820 KB
large1/large1_case_007.txt AC 1076 ms 124928 KB
large1/large1_case_008.txt AC 1075 ms 124852 KB
large1/large1_case_009.txt AC 1062 ms 124720 KB
large1/large1_case_010.txt AC 1088 ms 124892 KB
large1/large1_case_011.txt AC 1089 ms 124908 KB
large1/large1_case_012.txt AC 1074 ms 123120 KB
large1/large1_case_013.txt AC 1101 ms 124864 KB
large1/large1_case_014.txt AC 1073 ms 124996 KB
large1/large1_case_020.txt AC 1069 ms 125200 KB
large1/large1_case_021.txt AC 1071 ms 124960 KB
large1/large1_case_022.txt AC 1079 ms 124880 KB
large1/large1_case_023.txt AC 1087 ms 122560 KB
large3/case_000.txt AC 783 ms 88908 KB
large3/case_001.txt AC 797 ms 88892 KB
large3/case_002.txt AC 792 ms 88868 KB
large3/case_003.txt AC 783 ms 88892 KB
large3/case_004.txt AC 804 ms 89548 KB
large3/case_005.txt AC 797 ms 89388 KB
large3/case_006.txt AC 797 ms 89408 KB
large3/case_007.txt AC 799 ms 89388 KB
large3/case_008.txt AC 788 ms 89452 KB
large3/case_009.txt AC 783 ms 89252 KB
large3/case_010.txt AC 812 ms 89360 KB
large3/case_011.txt AC 801 ms 89492 KB
large3/case_012.txt AC 814 ms 89560 KB
large3/case_013.txt AC 832 ms 89600 KB
large3/case_014.txt AC 812 ms 89488 KB
large3/case_015.txt AC 821 ms 89604 KB
large3/case_024.txt AC 813 ms 89552 KB
large3/case_025.txt AC 808 ms 89592 KB
large3/case_026.txt AC 819 ms 89528 KB
large3/case_027.txt AC 804 ms 89452 KB
large3/large1_case_000.txt AC 1083 ms 125024 KB
large3/large1_case_001.txt AC 1088 ms 124860 KB
large3/large1_case_002.txt AC 1087 ms 124892 KB
large3/large1_case_003.txt AC 1086 ms 124780 KB
large3/large1_case_004.txt AC 1096 ms 124884 KB
large3/large1_case_005.txt AC 1061 ms 124996 KB
large3/large1_case_006.txt AC 1068 ms 124900 KB
large3/large1_case_007.txt AC 1086 ms 124972 KB
large3/large1_case_008.txt AC 1088 ms 124920 KB
large3/large1_case_009.txt AC 1074 ms 125132 KB
large3/large1_case_010.txt AC 1061 ms 125008 KB
large3/large1_case_011.txt AC 1073 ms 124800 KB
large3/large1_case_012.txt AC 1092 ms 124800 KB
large3/large1_case_013.txt AC 1095 ms 124692 KB
large3/large1_case_014.txt AC 1087 ms 124848 KB
large3/large1_case_020.txt AC 1078 ms 124932 KB
large3/large1_case_021.txt AC 1062 ms 124776 KB
large3/large1_case_022.txt AC 1097 ms 125644 KB
large3/large1_case_023.txt AC 1065 ms 125012 KB
large3/large3_case_000.txt AC 1085 ms 124940 KB
large3/large3_case_001.txt AC 1105 ms 125068 KB
large3/large3_case_002.txt AC 1079 ms 125060 KB
large3/large3_case_003.txt AC 1088 ms 124884 KB
large3/large3_case_004.txt AC 1086 ms 124700 KB
large3/large3_case_005.txt AC 1093 ms 124840 KB
large3/large3_case_006.txt AC 1098 ms 124768 KB
large3/large3_case_007.txt AC 1088 ms 125028 KB
large3/large3_case_008.txt AC 1084 ms 124916 KB
large3/large3_case_009.txt AC 1069 ms 125164 KB
large3/large3_case_010.txt AC 1069 ms 124896 KB
large3/large3_case_011.txt AC 1096 ms 125172 KB
large3/large3_case_012.txt AC 1099 ms 124964 KB
large3/large3_case_013.txt AC 1073 ms 124800 KB
large3/large3_case_014.txt AC 1111 ms 124628 KB
large3/large3_case_015.txt AC 1110 ms 125040 KB
large3/large3_case_016.txt AC 1095 ms 124916 KB
large3/large3_case_017.txt AC 1085 ms 124904 KB
large3/large3_case_018.txt AC 1072 ms 124964 KB
large3/large3_case_019.txt AC 1081 ms 124684 KB
large3/large3_case_020.txt AC 1073 ms 124492 KB
large3/large3_case_021.txt AC 1087 ms 124760 KB
large3/large3_case_022.txt AC 1117 ms 124780 KB
large3/large3_case_023.txt AC 1144 ms 122584 KB
small/case_000.txt AC 770 ms 88808 KB
small/case_001.txt AC 793 ms 88780 KB
small/case_002.txt AC 784 ms 88908 KB
small/case_003.txt AC 788 ms 88936 KB
small/case_004.txt AC 802 ms 89256 KB
small/case_005.txt AC 816 ms 89484 KB
small/case_006.txt AC 803 ms 89620 KB
small/case_007.txt AC 797 ms 89324 KB
small/case_008.txt AC 804 ms 89380 KB
small/case_009.txt AC 806 ms 89276 KB
small/case_010.txt AC 797 ms 89600 KB
small/case_011.txt AC 810 ms 89316 KB
small/case_012.txt AC 819 ms 89496 KB
small/case_013.txt AC 787 ms 89472 KB
small/case_014.txt AC 785 ms 89308 KB
small/case_015.txt AC 805 ms 89540 KB
small/case_024.txt AC 793 ms 89420 KB
small/case_025.txt AC 793 ms 89608 KB
small/case_026.txt AC 818 ms 89544 KB
small/case_027.txt AC 814 ms 89536 KB