Submission #908149

#TimeUsernameProblemLanguageResultExecution timeMemory
908149tosivanmakGondola (IOI14_gondola)C++17
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long ll negmod(ll num, ll n){ return ((num%n)+n)%n; } ll n,arr[100005]; bool ck(){ ll cnt=0; map<ll,ll>mp; for(int i=1;i<=n;i++){ if(arr[i]>n){ cnt++; } mp[arr[i]]++; if(mp[arr[i]]>=2){ return 0; } } if(cnt==n){ return 1; } ll first; for(int i=1;i<=n;i++){ if(arr[i]<=n){ first=i; break; } } ll con[n+5]; ll need=arr[first]; for(int i=1;i<=n;i++){ ll lol= negmod(i-first+need,n); if(!lol){lol=n;} con[i]=lol; } bool ok=true; for(int i=1;i<=n;i++){ if(arr[i]<=n&&arr[i]!=con[i]){ ok=0; } } if(ok){ return 1; } else{ return 0; } } int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll subtask; cin>>subtask; if(subtask<=3){ cin>>n; for(int i=1;i<=n;i++){ cin>>arr[i]; } if(ck()){ cout<<"1\n"; } else{ cout<<"0\n"; } } else if(subtask<=6){ cin>>n; for(int i=1;i<=n;i++){ cin>>arr[i]; } set<pair<ll,ll> >st; ll recon[n+5]; ll cnt=0; for(int i=1;i<=n;i++){ cnt+=(arr[i]>n); } if(cnt==n){ for(int i=1;i<=n;i++){ recon[i]=i; } } else{ ll saga; for(int i=1;i<=n;i++){ if(arr[i]<=n){ saga=i; break; } } ll need=arr[saga]; for(int i=1;i<=n;i++){ ll lol= negmod(i-saga+need,n); if(!lol)lol=n; recon[i]=lol; } } for(int i=1;i<=n;i++){ st.insert({arr[i],i}); } st.insert({300000,1}); ll last=n; vector<ll>seq; while(1){ pair<ll,ll>bruh=*st.lower_bound({last+1,0}); if(bruh.first==300000){ break; } seq.push_back(recon[bruh.second]); for(int i=last+2;i<=bruh.first;i++){ seq.push_back(i-1); } last=bruh.first; } cout<<seq.size()<<'\n'; for(auto& u: seq){ cout<<u<<"\n"; } } }

Compilation message (stderr)

gondola.cpp: In function 'bool ck()':
gondola.cpp:32:12: warning: 'first' may be used uninitialized in this function [-Wmaybe-uninitialized]
   32 |         ll need=arr[first];
      |            ^~~~
gondola.cpp: In function 'int main()':
gondola.cpp:92:17: warning: 'saga' may be used uninitialized in this function [-Wmaybe-uninitialized]
   92 |              ll need=arr[saga];
      |                 ^~~~
/usr/bin/ld: /tmp/cctKPyYg.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccAPJlDf.o:gondola.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/cctKPyYg.o: in function `main':
grader.cpp:(.text.startup+0xb6): undefined reference to `valid'
/usr/bin/ld: grader.cpp:(.text.startup+0x108): undefined reference to `countReplacement'
/usr/bin/ld: grader.cpp:(.text.startup+0x132): undefined reference to `replacement'
collect2: error: ld returned 1 exit status