제출 #145053

#제출 시각아이디문제언어결과실행 시간메모리
145053Linca_RobertAlkemija (COCI18_alkemija)C++14
80 / 80
192 ms10816 KiB
#include<bits/stdc++.h> using namespace std; const int DIM = 1e5 + 5; int N, cnt_ukn[DIM], M, f[DIM], K, vis[DIM]; vector<int> aux[DIM]; vector<int> R[DIM]; queue<int> q; int main(){ cin >> N >> M; for( int i = 1; i <= M; i++ ){ int x; cin >> x; f[x] = 1; } cin >> K; for( int i = 1; i <= K; i++ ){ int a, b; cin >> a >> b; cnt_ukn[i] = a; for( int j = 1; j <= a; j++ ){ int x; cin >> x; cnt_ukn[i] -= f[x]; if( f[x] == 0 ) aux[x].push_back( i ); } for( int j = 1; j <= b; j++ ){ int x; cin >> x; R[i].push_back( x ); } if( cnt_ukn[i] == 0 ) q.push( i ), vis[i] = 1; } while( !q.empty() ){ int curr = q.front(); q.pop(); for( int i = 0; i < R[curr].size(); i++ ){ f[ R[curr][i] ] = 1; for( int j = 0; j < aux[ R[curr][i] ].size(); j++ ){ int k = aux[ R[curr][i] ][j]; cnt_ukn[k]--; if( cnt_ukn[k] == 0 && vis[k] == 0 ){ q.push( k ); vis[k] = 1; } } if( !aux[ R[curr][i] ].empty() ) aux[ R[curr][i] ].clear(); } } int ans = 0; for( int i = 1; i <= N; i++ ) ans += f[i]; cout << ans << "\n"; for( int i = 1; i <= N; i++ ) if( f[i] == 1 ) cout << i << " "; return 0; }

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

alkemija.cpp: In function 'int main()':
alkemija.cpp:42:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for( int i = 0; i < R[curr].size(); i++ ){
                         ~~^~~~~~~~~~~~~~~~
alkemija.cpp:45:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             for( int j = 0; j < aux[ R[curr][i] ].size(); j++ ){
                             ~~^~~~~~~~~~~~~~~~~~~~~~~~~~
#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...