Submission #1193506

#TimeUsernameProblemLanguageResultExecution timeMemory
1193506UnforgettableplSprinklers (CEOI24_sprinklers)C++20
9 / 100
36 ms2120 KiB
#include <bits/stdc++.h> using namespace std; #define int long long int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int N,M; cin >> N >> M; vector<int> S(N+1); vector<int> F(M+1); for(int i=1;i<=N;i++)cin>>S[i]; for(int i=1;i<=M;i++)cin>>F[i]; vector<bool> turn(N+1); // true is right auto solve = [&](int K){ int iterFlower = 1; for(int i=1;i<=N;i++){ if(iterFlower!=M+1 and F[iterFlower]<S[i]-K)return false; if(iterFlower!=M+1 and F[iterFlower]<S[i])turn[i]=false; else turn[i]=true; int t; if(turn[i])t=S[i]+K; else t=S[i]; while(iterFlower!=M+1 and F[iterFlower]<=t)iterFlower++; } return iterFlower==M+1; }; int ans = -1; for(int jump=(1ll<<31);jump;jump/=2){ if(!solve(ans+jump))ans+=jump; } ans++; if(ans>1e9)cout<<"-1\n"; else { cout << ans << '\n'; for(int i=1;i<=N;i++)if(turn[i])cout<<'R'; else cout << 'L'; cout << '\n'; } }
#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...