답안 #164099

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
164099 2019-11-17T12:58:24 Z beso123 Topovi (COCI15_topovi) C++14
30 / 120
1532 ms 33652 KB
#include <bits/stdc++.h>
#define rep(i,n) for(int i=0;i<(n);++i)
#define repA(i,a,n) for(int i=a;i<=(n);++i)
#define repD(i,a,n) for(int i=a;i>=(n);--i)
#define f first
#define s second
#define pb push_back
#define mp make_pair
#define ll long long
using namespace std;
map<int,int> xorr,xorc;
map<int,int> cntr,cntc;
map<pair<int,int>,int> rook;
ll ans = 0;
int n,k,p;
void add(int r,int c,int x){
    rook[{r,c}] ^= x;
    ans -= n-cntc[xorr[r]];
    ans -= n-cntr[xorc[c]];
    if (xorr[r] != xorc[c]) ans++;
    cntc[xorc[c]]--;
    cntr[xorr[r]]--;
    xorr[r] ^= x;
    xorc[c] ^= x;
    cntc[xorc[c]]++;
    cntr[xorr[r]]++;
    ans += n-cntc[xorr[r]];
    ans += n-cntr[xorc[c]];
    if (xorr[r] != xorc[c]) ans--;
}
int main(){
scanf("%d%d%d",&n,&k,&p);
    cntr[0] = n;
    cntc[0] = n;
    rep(i,k){
    	int r,c,x;
    	scanf("%d%d%d",&r,&c,&x);
    	add(r,c,x);
    }
    while(p--){
    	int r1,c1,r2,c2;
    	scanf("%d%d%d%d",&r1,&c1,&r2,&c2);
        int x = rook[{r1,c1}];
    	add(r1,c1,x);
        add(r2,c2,x);
    	printf("%d\n",ans);
    }
    return 0;
}

Compilation message

topovi.cpp: In function 'int main()':
topovi.cpp:46:23: warning: format '%d' expects argument of type 'int', but argument 2 has type 'long long int' [-Wformat=]
      printf("%d\n",ans);
                       ^
topovi.cpp:32:6: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 scanf("%d%d%d",&n,&k,&p);
 ~~~~~^~~~~~~~~~~~~~~~~~~
topovi.cpp:37:11: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
      scanf("%d%d%d",&r,&c,&x);
      ~~~~~^~~~~~~~~~~~~~~~~~~
topovi.cpp:42:11: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
      scanf("%d%d%d%d",&r1,&c1,&r2,&c2);
      ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 396 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Incorrect 173 ms 5684 KB Output isn't correct
7 Incorrect 138 ms 5352 KB Output isn't correct
8 Incorrect 109 ms 4380 KB Output isn't correct
9 Incorrect 104 ms 4472 KB Output isn't correct
10 Incorrect 118 ms 4600 KB Output isn't correct
11 Incorrect 1476 ms 33416 KB Output isn't correct
12 Incorrect 1509 ms 33560 KB Output isn't correct
13 Incorrect 1532 ms 33556 KB Output isn't correct
14 Incorrect 1463 ms 33612 KB Output isn't correct
15 Incorrect 1461 ms 33484 KB Output isn't correct
16 Incorrect 1486 ms 33484 KB Output isn't correct
17 Incorrect 1468 ms 33528 KB Output isn't correct
18 Incorrect 1496 ms 33652 KB Output isn't correct
19 Incorrect 1486 ms 33428 KB Output isn't correct
20 Incorrect 1459 ms 33584 KB Output isn't correct