Submission #66050


Source Code Expand

#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

typedef long long ll;

#define rep(i, n) for(int i = 0; i < n; i++)

const int L = 2010;

int n;
int t[10010],x[10010],y[10010],s[10010];
ll ps[3][2020];

int main(){
	scanf("%d", &n);
	rep(i, n){
		scanf("%d %d %d %d", &t[i], &x[i], &y[i], &s[i]);
		x[i] += L / 2;
		y[i] += L / 2;
		s[i]--;
	}
	ll res = 0;
	rep(j, L){
		memset(ps, 0, sizeof(ps));
		rep(i, n){
			if(x[i] - s[i] <= j && j <= x[i] + s[i]){
				int y0 = max(y[i] - s[i], x[i] + y[i] - s[i] - j);
				int y1 = min(y[i] + s[i], x[i] + y[i] + s[i] - j);
				if(y0 <= y1){
					int l = y1 - y0 - s[i];
					if(t[i] == 1){
						ps[0][y0]++;
						ps[0][y1 + 1]--;
					}
					else if(t[i] == 2){
						ps[1][y0]++;
						ps[1][y0 + l]--;
						ps[0][y0] += -(y0 - 1);
						ps[0][y0 + l] -= -(y0 - 1);
						ps[0][y0 + l] += l + 1;
						ps[0][y1 - l + 1] -= l + 1;
						ps[1][y1 - l + 1]--;
						ps[1][y1 + 1]++;
						ps[0][y1 - l + 1] += y1 + 1;
						ps[0][y1 + 1] -= y1 + 1;
					}
					else if(t[i] == 3){
						ps[2][y0]++;
						ps[2][y0 + l]--;
						ps[1][y0] += -2 * (y0 - 1);
						ps[1][y0 + l] -= -2 * (y0 - 1);
						ps[0][y0] += (y0 - 1) * (y0 - 1);
						ps[0][y0 + l] -= (y0 - 1) * (y0 - 1);
						ps[0][y0 + l] += (l + 1) * (l + 1);
						ps[0][y1 - l + 1] -= (l + 1) * (l + 1);
						ps[2][y1 - l + 1]++;
						ps[2][y1 + 1]--;
						ps[1][y1 - l + 1] += -2 * (y1 + 1);
						ps[1][y1 + 1] -= -2 * (y1 + 1);
						ps[0][y1 - l + 1] += (y1 + 1) * (y1 + 1);
						ps[0][y1 + 1] -= (y1 + 1) * (y1 + 1);
					}
				}
			}
		}
		ll now[3] = {};
		rep(i, L){
			rep(d, 3){
				now[d] += ps[d][i];
			}
			ll tmp = (now[2] * i + now[1]) * i + now[0];
			res = max(res, tmp);
		}
	}
	printf("%lld\n", res);
	return 0;
}

Submission Info

Submission Time
Task I - その味は甘くて
User orpheus
Language C++ (G++ 4.6.4)
Score 150
Code Size 1855 Byte
Status AC
Exec Time 240 ms
Memory 920 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:18:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:20:51: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

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 38 ms 788 KB
large1/case_001.txt AC 39 ms 652 KB
large1/case_002.txt AC 37 ms 784 KB
large1/case_003.txt AC 39 ms 792 KB
large1/case_004.txt AC 40 ms 788 KB
large1/case_005.txt AC 37 ms 784 KB
large1/case_006.txt AC 39 ms 784 KB
large1/case_007.txt AC 38 ms 788 KB
large1/case_008.txt AC 40 ms 780 KB
large1/case_009.txt AC 40 ms 792 KB
large1/case_010.txt AC 40 ms 772 KB
large1/case_011.txt AC 38 ms 776 KB
large1/case_012.txt AC 40 ms 780 KB
large1/case_013.txt AC 39 ms 788 KB
large1/case_014.txt AC 40 ms 788 KB
large1/case_015.txt AC 40 ms 780 KB
large1/case_024.txt AC 38 ms 684 KB
large1/case_025.txt AC 40 ms 652 KB
large1/case_026.txt AC 40 ms 792 KB
large1/case_027.txt AC 38 ms 812 KB
large1/large1_case_000.txt AC 174 ms 816 KB
large1/large1_case_001.txt AC 175 ms 820 KB
large1/large1_case_002.txt AC 176 ms 824 KB
large1/large1_case_003.txt AC 178 ms 824 KB
large1/large1_case_004.txt AC 179 ms 784 KB
large1/large1_case_005.txt AC 178 ms 824 KB
large1/large1_case_006.txt AC 178 ms 760 KB
large1/large1_case_007.txt AC 174 ms 816 KB
large1/large1_case_008.txt AC 177 ms 832 KB
large1/large1_case_009.txt AC 177 ms 776 KB
large1/large1_case_010.txt AC 174 ms 824 KB
large1/large1_case_011.txt AC 176 ms 920 KB
large1/large1_case_012.txt AC 178 ms 820 KB
large1/large1_case_013.txt AC 175 ms 816 KB
large1/large1_case_014.txt AC 177 ms 816 KB
large1/large1_case_020.txt AC 142 ms 832 KB
large1/large1_case_021.txt AC 139 ms 816 KB
large1/large1_case_022.txt AC 137 ms 908 KB
large1/large1_case_023.txt AC 142 ms 756 KB
large3/case_000.txt AC 36 ms 780 KB
large3/case_001.txt AC 40 ms 812 KB
large3/case_002.txt AC 40 ms 784 KB
large3/case_003.txt AC 39 ms 792 KB
large3/case_004.txt AC 37 ms 668 KB
large3/case_005.txt AC 40 ms 784 KB
large3/case_006.txt AC 37 ms 776 KB
large3/case_007.txt AC 39 ms 656 KB
large3/case_008.txt AC 38 ms 784 KB
large3/case_009.txt AC 38 ms 776 KB
large3/case_010.txt AC 38 ms 784 KB
large3/case_011.txt AC 39 ms 776 KB
large3/case_012.txt AC 38 ms 780 KB
large3/case_013.txt AC 41 ms 696 KB
large3/case_014.txt AC 41 ms 780 KB
large3/case_015.txt AC 40 ms 664 KB
large3/case_024.txt AC 39 ms 780 KB
large3/case_025.txt AC 39 ms 768 KB
large3/case_026.txt AC 38 ms 792 KB
large3/case_027.txt AC 39 ms 784 KB
large3/large1_case_000.txt AC 177 ms 836 KB
large3/large1_case_001.txt AC 172 ms 912 KB
large3/large1_case_002.txt AC 176 ms 752 KB
large3/large1_case_003.txt AC 175 ms 908 KB
large3/large1_case_004.txt AC 176 ms 820 KB
large3/large1_case_005.txt AC 174 ms 912 KB
large3/large1_case_006.txt AC 178 ms 816 KB
large3/large1_case_007.txt AC 176 ms 820 KB
large3/large1_case_008.txt AC 176 ms 824 KB
large3/large1_case_009.txt AC 177 ms 752 KB
large3/large1_case_010.txt AC 179 ms 784 KB
large3/large1_case_011.txt AC 178 ms 820 KB
large3/large1_case_012.txt AC 176 ms 816 KB
large3/large1_case_013.txt AC 175 ms 824 KB
large3/large1_case_014.txt AC 175 ms 824 KB
large3/large1_case_020.txt AC 143 ms 772 KB
large3/large1_case_021.txt AC 142 ms 908 KB
large3/large1_case_022.txt AC 138 ms 824 KB
large3/large1_case_023.txt AC 140 ms 792 KB
large3/large3_case_000.txt AC 236 ms 912 KB
large3/large3_case_001.txt AC 240 ms 820 KB
large3/large3_case_002.txt AC 236 ms 916 KB
large3/large3_case_003.txt AC 235 ms 916 KB
large3/large3_case_004.txt AC 234 ms 896 KB
large3/large3_case_005.txt AC 237 ms 908 KB
large3/large3_case_006.txt AC 238 ms 820 KB
large3/large3_case_007.txt AC 236 ms 812 KB
large3/large3_case_008.txt AC 240 ms 784 KB
large3/large3_case_009.txt AC 236 ms 832 KB
large3/large3_case_010.txt AC 236 ms 920 KB
large3/large3_case_011.txt AC 239 ms 820 KB
large3/large3_case_012.txt AC 236 ms 820 KB
large3/large3_case_013.txt AC 237 ms 824 KB
large3/large3_case_014.txt AC 236 ms 812 KB
large3/large3_case_015.txt AC 235 ms 908 KB
large3/large3_case_016.txt AC 236 ms 828 KB
large3/large3_case_017.txt AC 236 ms 908 KB
large3/large3_case_018.txt AC 238 ms 760 KB
large3/large3_case_019.txt AC 234 ms 816 KB
large3/large3_case_020.txt AC 189 ms 824 KB
large3/large3_case_021.txt AC 187 ms 824 KB
large3/large3_case_022.txt AC 188 ms 820 KB
large3/large3_case_023.txt AC 186 ms 908 KB
small/case_000.txt AC 37 ms 780 KB
small/case_001.txt AC 37 ms 760 KB
small/case_002.txt AC 37 ms 780 KB
small/case_003.txt AC 39 ms 788 KB
small/case_004.txt AC 38 ms 784 KB
small/case_005.txt AC 39 ms 792 KB
small/case_006.txt AC 38 ms 688 KB
small/case_007.txt AC 37 ms 788 KB
small/case_008.txt AC 38 ms 784 KB
small/case_009.txt AC 39 ms 780 KB
small/case_010.txt AC 40 ms 696 KB
small/case_011.txt AC 41 ms 784 KB
small/case_012.txt AC 41 ms 784 KB
small/case_013.txt AC 40 ms 780 KB
small/case_014.txt AC 40 ms 652 KB
small/case_015.txt AC 40 ms 792 KB
small/case_024.txt AC 39 ms 788 KB
small/case_025.txt AC 40 ms 796 KB
small/case_026.txt AC 41 ms 656 KB
small/case_027.txt AC 41 ms 780 KB