제출 #1162594

#제출 시각아이디문제언어결과실행 시간메모리
11625948pete8A Light Inconvenience (CEOI23_light)C++20
100 / 100
195 ms416 KiB
#include "light.h" #include<iostream> #include<stack> #include<map> #include<vector> #include<string> #include<cassert> #include<unordered_map> #include <queue> #include <cstdint> #include<cstring> #include<limits.h> #include<cmath> #include<set> #include<algorithm> #include <iomanip> #include<numeric> #include<complex> #include<bitset> using namespace std; #define ll long long #define f first #define s second #define pii pair<int,int> #define ppii pair<int,pii> #define vi vector<int> #define pb push_back #define all(x) x.begin(),x.end() #define rall(x) x.rbegin(),x.rend() #define F(n) for(int i=0;i<n;i++) #define lb lower_bound #define ub upper_bound #define fastio ios::sync_with_stdio(false);cin.tie(NULL); #pragma GCC optimize ("03,unroll-lopps") #define int long long int cnt,n,yes; vector<int>have; void prepare(){ have.clear(); have.pb(1); n=1; } int idx(int x){return (n-x+1);} pair<long long, std::vector<long long>> join(long long p){ n+=p; pair<int,vector<int>>ans; vector<int>tmp; for(auto &j:have)j+=p; int cur=1; ans.f=p; while(cur<n){ tmp.pb(cur); auto it=upper_bound(all(have),2*cur+1); if(it!=have.end()&&(*it)-p<=2*cur+1)cur=2*cur+1; else if(it!=have.begin()&&cur<=(*prev(it))){ cur=(*(prev(it))); } else break; } tmp.pb(n); sort(all(tmp)); tmp.erase(unique(all(tmp)),tmp.end()); swap(tmp,have); for(auto i:have)ans.s.pb(idx(i)); reverse(all(ans.s)); return ans; } pair<long long, std::vector<long long>> leave(long long p){ n-=p; pair<int,vector<int>>ans; vector<int>tmp; for(auto &j:have)j-=p; int cur=1; ans.f=p; while(cur<n){ tmp.pb(cur); auto it=upper_bound(all(have),2*cur+1); if(it!=have.end()&&(*it)-p<=2*cur+1)cur=2*cur+1; else if(it!=have.begin()&&cur<=(*prev(it))){ cur=(*(prev(it))); } else break; } tmp.pb(n); sort(all(tmp)); tmp.erase(unique(all(tmp)),tmp.end()); swap(tmp,have); for(auto i:have)ans.s.pb(idx(i)); reverse(all(ans.s)); return ans; } /* 4095 2 8908 -1835 */

컴파일 시 표준 에러 (stderr) 메시지

light.cpp:34:40: warning: bad option '-funroll-lopps' to pragma 'optimize' [-Wpragmas]
   34 | #pragma GCC optimize ("03,unroll-lopps")
      |                                        ^
light.cpp:38:14: warning: bad option '-funroll-lopps' to attribute 'optimize' [-Wattributes]
   38 | void prepare(){
      |              ^
light.cpp:43:14: warning: bad option '-funroll-lopps' to attribute 'optimize' [-Wattributes]
   43 | int idx(int x){return (n-x+1);}
      |              ^
light.cpp:44:57: warning: bad option '-funroll-lopps' to attribute 'optimize' [-Wattributes]
   44 | pair<long long, std::vector<long long>> join(long long p){
      |                                                         ^
light.cpp:68:58: warning: bad option '-funroll-lopps' to attribute 'optimize' [-Wattributes]
   68 | pair<long long, std::vector<long long>> leave(long long p){
      |                                                          ^
#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...