제출 #681099

#제출 시각아이디문제언어결과실행 시간메모리
681099Cross_RatioNuclearia (CEOI15_nuclearia)C++14
21 / 100
1103 ms277324 KiB
#include <bits/stdc++.h> using namespace std; vector<vector<long long int>> A, B; array<long long int, 4> C[200005]; signed main() { cin.sync_with_stdio(false); cin.tie(0); cout.tie(0); int W, H; cin >> W >> H; A.resize(W); B.resize(W); int i, j; for(i=0;i<W;i++) { A[i].resize(H); B[i].resize(H); } int N; cin >> N; for(i=0;i<N;i++) { cin >> C[i][0] >> C[i][1] >> C[i][2] >> C[i][3]; C[i][0]--, C[i][1]--; for(j=0;j<W;j++) { for(int k = 0; k < H; k++) { A[j][k] += max(0LL, C[i][2] - max(abs(j-C[i][0]),abs(k-C[i][1])) * C[i][3]); } } } for(i=0;i<W;i++) { for(j=0;j<H;j++) { B[i][j] = (i?B[i-1][j]:0) + (j?B[i][j-1]:0) - ((long long int)i*j?B[i-1][j-1]:0) + A[i][j]; } } int Q; cin >> Q; while(Q--) { long long int a, b, c, d; cin >> a >> b >> c >> d; a--, b--, c--, d--; long long int val = B[c][d] - (a?B[a-1][d]:0) - (b?B[c][b-1]:0) + (a*b?B[a-1][b-1]:0); //cout << val << '\n long long int x = (c-a+1)* (d-b+1); long long int y = val / x; if(2*(val % x) >= x) y++; cout << y << '\n'; } }

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

nuclearia.cpp: In function 'int main()':
nuclearia.cpp:31:76: warning: '*' in boolean context, suggest '&&' instead [-Wint-in-bool-context]
   31 |             B[i][j] = (i?B[i-1][j]:0) + (j?B[i][j-1]:0) - ((long long int)i*j?B[i-1][j-1]:0) + A[i][j];
      |                                                            ~~~~~~~~~~~~~~~~^~
nuclearia.cpp:40:77: warning: '*' in boolean context, suggest '&&' instead [-Wint-in-bool-context]
   40 |         long long int val = B[c][d] - (a?B[a-1][d]:0) - (b?B[c][b-1]:0) + (a*b?B[a-1][b-1]:0);
      |                                                                            ~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...