Submission #1160579

#TimeUsernameProblemLanguageResultExecution timeMemory
1160579hainam2k9Xylophone (JOI18_xylophone)C++20
Compilation error
0 ms0 KiB
#include <xylophone.h> #include <bits/stdc++.h> #define tt cin.tie(0), cout.tie(0), ios_base::sync_with_stdio(0) #define fo freopen((NAME+".INP").c_str(), "r", stdin), freopen((NAME+".OUT").c_str(), "w", stdout) #define ll long long #define ull unsigned long long #define i128 __int128 #define db long double #define sz(a) ((int)(a).size()) #define pb emplace_back #define pf emplace_front #define pob pop_back #define pof pop_front #define lb lower_bound #define ub upper_bound #define fi first #define se second #define ins emplace #define mp make_pair using namespace std; const int MOD = 1e9+7, MAXN = 1e5+5; const string NAME = ""; int seg2[5005],seg3[5005],a[5005]; bool vis[5005]; //int num[5005]; //int query(int l, int r){ // int x; // cout << l << " " << r << endl; // cin >> x; // return x; //} //void answer(int pos, int x){ // num[pos]=x; //} bool check(int n, int pos){ memset(vis,0,sizeof(vis)); a[pos]=1; bool ok=1; if(pos!=1) a[pos-1]=seg2[pos-1]+1; for(int i = pos-2; i>0&&ok; --i){ if(seg3[i]==seg2[i]){ if(a[i+1]<a[i+2]) a[i]=a[i+1]+seg2[i], ok&=a[i]>a[i+2]; else a[i]=a[i+1]-seg2[i], ok&=a[i]<a[i+2]; }else if(seg3[i]==seg2[i+1]){ if(a[i+1]<a[i+2]) a[i]=a[i+1]+seg2[i], ok&=a[i]>a[i+1]&&a[i]<a[i+2]; else a[i]=a[i+1]-seg2[i], ok&=a[i]<a[i+1]&&a[i]>a[i+2]; }else{ if(a[i+1]<a[i+2]) a[i]=a[i+1]-seg2[i]; else a[i]=a[i+1]-seg2[i]; } ok&=a[i]>0&&a[i]<=n; if(a[i]>0&&a[i]<=n) ok&=!vis[a[i]], vis[a[i]]=1; } a[pos+1]=seg2[pos]+1; for(int i = pos+2; i<=n&&ok; ++i){ if(seg3[i-2]==seg2[i-2]){ if(a[i-2]<a[i-1]) a[i]=a[i-1]-seg2[i-1], ok&=a[i]>a[i-2]&&a[i]<a[i-1]; else a[i]=a[i-1]+seg2[i-1], ok&=a[i]<a[i-2]&&a[i]>a[i-1]; }else if(seg3[i]==seg2[i-1]){ if(a[i-2]<a[i-1]) a[i]=a[i-1]-seg2[i-1], ok&=a[i]<a[i-2]; else a[i]=a[i-1]+seg2[i-1], ok&=a[i]>a[i-2]; }else{ if(a[i-2]<a[i-1]) a[i]=a[i-1]+seg2[i-1]; else a[i]=a[i-1]-seg2[i-1]; } ok&=a[i]>0&&a[i]<=n; if(a[i]>0&&a[i]<=n) ok&=!vis[a[i]], vis[a[i]]=1; } return ok; } void solve(int n){ for(int i = 1; i<n; ++i){ seg2[i]=query(i,i+1); if(i<n-1) seg3[i]=query(i,i+2); } if(check(n,1)){ for(int i = 1; i<=n; ++i) answer(i,a[i]); return; } for(int i = 1; i<n-1; ++i) if((seg3[i]==seg2[i]||seg3[i]==seg2[i+1])&&check(n,i+1)){ for(int i = 1; i<=n; ++i) answer(i,a[i]); return; } } //int main() //{ // tt; // if(fopen((NAME + ".INP").c_str(), "r")) fo; // solve(5); // for(int i = 1; i<=5; ++i) // cout << num[i] << " "; //} ////1 ////4 ////4 ////4 ////2 ////2 ////1

Compilation message (stderr)

xylophone.cpp:1:10: fatal error: xylophone.h: No such file or directory
    1 | #include <xylophone.h>
      |          ^~~~~~~~~~~~~
compilation terminated.