結果
問題 | No.2535 多重同値 |
ユーザー |
|
提出日時 | 2023-11-10 21:46:56 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 149 ms / 2,000 ms |
コード長 | 767 bytes |
コンパイル時間 | 2,028 ms |
コンパイル使用メモリ | 203,032 KB |
最終ジャッジ日時 | 2025-02-17 20:36:49 |
ジャッジサーバーID (参考情報) |
judge1 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 20 |
ソースコード
#include<bits/stdc++.h>using namespace std;using ll=long long;int main(){ll n;cin>>n;vector<vector<ll>> G(n);for(ll i=0;i<n-1;i++){G[i].push_back(i+1);}vector<string> s(n);for(ll i=0;i<n;i++){cin>>s[i];}queue<ll> que;que.push(0);vector<string> ans(n);if(s[0]=="Yes"){ans[0]="Yes";}else{ans[0]="No";}while(que.size()){ll q=que.front();que.pop();for(ll u:G[q]){que.push(u);if(s[u]=="Yes"){if(ans[q]=="Yes"){ans[u]="Yes";}else{ans[u]="No";}}else{if(ans[q]=="Yes"){ans[u]="No";}else{ans[u]="Yes";}}}}for(ll i=0;i<n;i++){cout<<ans[i]<<endl;}}