제출 #42234

#제출 시각아이디문제언어결과실행 시간메모리
42234yusufake팀들 (IOI15_teams)C++98
0 / 100
920 ms134232 KiB
#include<bits/stdc++.h> using namespace std; #define _ int v, int tl, int tr, int l, int r #define tm (tl + tr >> 1) #define sol L[v],tl,tm,l,r #define sag R[v],tm+1,tr,l,r #define mp make_pair #define pb push_back #define st first #define nd second typedef long long ll; typedef pair < int , int > pp; const int mod = 1e9 + 7; const int N = 5e5 + 5; pp P[N]; int root[N],s[N*22],L[N*22],R[N*22],id,n; int up(_){ if(tl > r || tr < l) return v; int nw = ++id; if(tl == tr) { s[nw] = s[v] + 1; return nw; } L[nw] = up(sol); R[nw] = up(sag); s[nw] = s[ L[nw] ] + s[ R[nw] ]; return nw; } int qry(_) { if(tl > r || tr < l) return 0; if(tl >= l && tr <= r) return s[v]; return qry(sol) + qry(sag); } int can(int m, int T[]){ sort(T , T+m); int i, x, p=0, kalan=0; for(i=0;i<m;i++){ x = T[i]; kalan = min(kalan , qry(root[p],1,n,x,n)); kalan += qry(root[x],1,n,x,n) - qry(root[p],1,n,x,n); kalan -= x; p = x; if(kalan < 0) return 0; } return 1; } void init(int zz, int a[], int b[]){ int i,p=0; n = zz; for(i=1;i<=n;i++) P[i] = mp(a[i-1] , b[i-1]); sort(P+1 , P+n+1); for(i=1;i<=n;i++){ p = up(p,1,n,P[i].nd,P[i].nd); if(P[i].st != P[i+1].st) root[ P[i].st ] = p; } for(i=1;i<=n;i++) if(!root[i]) root[i] = root[i-1]; }

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

teams.cpp: In function 'int up(int, int, int, int, int)':
teams.cpp:5:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
 #define tm  (tl + tr >> 1)
                 ^
teams.cpp:6:21: note: in expansion of macro 'tm'
 #define sol L[v],tl,tm,l,r 
                     ^
teams.cpp:27:13: note: in expansion of macro 'sol'
  L[nw] = up(sol);  
             ^
teams.cpp:5:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
 #define tm  (tl + tr >> 1)
                 ^
teams.cpp:7:18: note: in expansion of macro 'tm'
 #define sag R[v],tm+1,tr,l,r 
                  ^
teams.cpp:28:13: note: in expansion of macro 'sag'
  R[nw] = up(sag);  
             ^
teams.cpp: In function 'int qry(int, int, int, int, int)':
teams.cpp:5:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
 #define tm  (tl + tr >> 1)
                 ^
teams.cpp:6:21: note: in expansion of macro 'tm'
 #define sol L[v],tl,tm,l,r 
                     ^
teams.cpp:35:13: note: in expansion of macro 'sol'
  return qry(sol) + qry(sag); 
             ^
teams.cpp:5:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
 #define tm  (tl + tr >> 1)
                 ^
teams.cpp:7:18: note: in expansion of macro 'tm'
 #define sag R[v],tm+1,tr,l,r 
                  ^
teams.cpp:35:24: note: in expansion of macro 'sag'
  return qry(sol) + qry(sag); 
                        ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...