# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
787315 | 2023-07-19T05:03:00 Z | 박상훈(#10032) | 즐거운 사진 수집 (JOI13_collecting) | C++17 | 11 ms | 1040 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; int cntR[21][1<<21], cntC[21][1<<21], R[21][1<<21], C[21][1<<21]; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); int n, q; cin >> n >> q; ll ans = 1; for (int i=1;i<=n;i++){ cntR[i][0] = 1<<(n-i); cntC[i][0] = 1<<(n-i); } // int sz = 1<<n; while(q--){ int op, x; scanf("%d %d", &op, &x); --x; if (op==0){ for (int i=1;i<=n;i++){ int &msk = R[i][x>>i]; ans += (4LL) * cntC[i][msk]; // printf("add %lld\n", (1LL<<(i*2)) * cntC[i][msk]); cntR[i][msk]--; msk ^= 1<<(x&((1<<i)-1)); ans -= (4LL) * cntC[i][msk]; cntR[i][msk]++; } } else{ for (int i=1;i<=n;i++){ int &msk = C[i][x>>i]; ans += (4LL) * cntR[i][msk]; cntC[i][msk]--; msk ^= 1<<(x&((1<<i)-1)); ans -= (4LL) * cntR[i][msk]; cntC[i][msk]++; } } printf("%lld\n", ans); } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 340 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 11 ms | 724 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 9 ms | 1040 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |