| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 92038 | bharat2002 | Praktični (COCI18_prakticni) | C++14 | 139 ms | 18760 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
/*input
4 5
1 2 3
2 3 4
2 4 8
1 3 0
1 4 0
*/
#include<bits/stdc++.h>
using namespace std;
const int N=1e5 + 100;
const int mod=1e9 + 7;
#define int long long
class pii
{
public:
int f, s, ind;
};
inline pii mp(int a, int b, int c)
{
pii t;t.f=a;t.s=b;t.ind=c;return t;
}
inline pair<int, int> makep(int a, int b)
{
pair<int, int> t;t.first=a;t.second=b;return t;
}
vector< pii > adjlist[N];int n, m;
vector< pair<int, int> > req;bool visited[N];int xval[N];
vector<int> queries[40];int qvals[40];
void dfs(int i, int p)
{
visited[i]=1;
for(auto j:adjlist[i])
{
if(visited[j.f]&&j.f!=p)
{
if((j.s^xval[i]^xval[j.f])==0||i>j.f) continue;
req.push_back(make_pair(j.ind, (j.s^xval[i]^xval[j.f])));continue;
}
else if(!visited[j.f])
{
xval[j.f]=(xval[i]^j.s);dfs(j.f, i);
}
}
}
signed main()
{
ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int u, v, w;cin>>u>>v>>w;adjlist[u].push_back(mp(v, w, i));adjlist[v].push_back(mp(u, w, i));
}
for(int i=1;i<=n;i++)
{
visited[i]=xval[i]=0;
}
dfs(1, -1);
if(req.empty())
{
cout<<0;return 0;
}
int ans=0;
for(int i=29;i>=0;i--)
{
qvals[ans]=0;stack<int> upind;
for(int ft=0;ft<req.size();ft++)
{
auto j=req[ft];
if((j.second&(1<<i))) {queries[ans].push_back(j.first);upind.push(ft);qvals[ans]|=j.second;}
}
while(!upind.empty()) {int cur=upind.top();req[cur].second^=qvals[ans];upind.pop();}
if(qvals[ans]==0)
{
queries[ans].clear();continue;
}
ans++;
}
cout<<ans<<endl;
for(int i=0;i<ans;i++)
{
cout<<qvals[i]<<" "<<queries[i].size()<<" ";
for(auto j:queries[i]) cout<<j<<" ";cout<<endl;
}
}컴파일 시 표준 에러 (stderr) 메시지
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
