제출 #587250

#제출 시각아이디문제언어결과실행 시간메모리
587250rainboyZemljište (COCI22_zemljiste)C11
70 / 70
333 ms4744 KiB
#include <stdio.h> #define N 500 #define M 500 #define INF 0x3f3f3f3f3f3f3f3fLL long long abs_(long long a) { return a > 0 ? a : -a; } long long min(long long a, long long b) { return a < b ? a : b; } int main() { static long long aa[N + 1][M + 1]; int n, m, l, r, i, j, i1, i2, j1, j2; long long a, ans; scanf("%d%d%d%d", &n, &m, &l, &r); for (i = 1; i <= n; i++) for (j = 1; j <= m; j++) scanf("%lld", &aa[i][j]); for (i = 1; i <= n; i++) for (j = 1; j <= m; j++) aa[i][j] += aa[i][j - 1]; for (i = 1; i <= n; i++) for (j = 1; j <= m; j++) aa[i][j] += aa[i - 1][j]; ans = INF; for (i1 = 0; i1 < n; i1++) for (i2 = i1 + 1; i2 <= n; i2++) for (j1 = 0, j2 = 0; j1 < m; j1++) { while (j2 <= m && aa[i2][j2] - aa[i2][j1] - aa[i1][j2] + aa[i1][j1] < l) j2++; if (j2 <= m) { a = aa[i2][j2] - aa[i2][j1] - aa[i1][j2] + aa[i1][j1]; ans = min(ans, abs_(a - l) + abs_(a - r)); } if (j2 - j1 > 1) { a = aa[i2][j2 - 1] - aa[i2][j1] - aa[i1][j2 - 1] + aa[i1][j1]; ans = min(ans, abs_(a - l) + abs_(a - r)); } } printf("%lld\n", ans); return 0; }

컴파일 시 표준 에러 (stderr) 메시지

Main.c: In function 'main':
Main.c:15:2: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |  scanf("%d%d%d%d", &n, &m, &l, &r);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.c:18:4: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |    scanf("%lld", &aa[i][j]);
      |    ^~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...