Submission #478606

#TimeUsernameProblemLanguageResultExecution timeMemory
478606Haruto810198The Collection Game (BOI21_swaps)C++17
15 / 100
70 ms1312 KiB
#include <bits/stdc++.h> #include "swaps.h" using namespace std; //#define int long long #define double long double #define FOR(i, l, r, d) for(int i=(l); i<=(r); i+=(d)) #define szof(x) ((int)(x).size()) #define vi vector<int> #define pii pair<int, int> #define F first #define S second #define pb push_back #define eb emplace_back #define mkp make_pair const int INF = 2147483647; //const int LNF = INF*INF; const int MOD = 1000000007; const int mod = 998244353; const double eps = 1e-12; //#pragma GCC optimize("Ofast") //#pragma GCC optimize("unroll-loops") int gr[501][501]; bool vis[501]; bool cmp(int a, int b){ return gr[a][b]; } void solve(int N, int V){ FOR(dis, 1, N-1, 1){ FOR(i, 1, N, 1){ vis[i] = 0; } vector<pii> qu1, qu2; FOR(L, 1, N-dis, 1){ int R = L + dis; if(vis[L] == 0 and vis[R] == 0){ vis[L] = vis[R] = 1; qu1.eb(L, R); } else{ qu2.eb(L, R); } } for(pii i : qu1){ schedule(i.F, i.S); } vi ans = visit(); FOR(i, 0, szof(qu1) - 1, 1){ gr[qu1[i].F][qu1[i].S] = ans[i]; gr[qu1[i].S][qu1[i].F] = ans[i] ^ 1; } for(pii i : qu2){ schedule(i.F, i.S); } ans = visit(); FOR(i, 0, szof(qu2) - 1, 1){ gr[qu2[i].F][qu2[i].S] = ans[i]; gr[qu2[i].S][qu2[i].F] = ans[i] ^ 1; } } vi res; FOR(i, 1, N, 1){ res.pb(i); } /* FOR(i, 1, N, 1){ FOR(j, 1, N, 1){ cerr<<gr[i][j]<<" "; } cerr<<endl; } cerr<<endl; */ sort(res.begin(), res.end(), cmp); answer(res); }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...