답안 #1044291

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1044291 2024-08-05T08:39:07 Z imarn Sprinklers (CEOI24_sprinklers) C++14
6 / 100
48 ms 3648 KB
#include<bits/stdc++.h>
#define ll long long
#define pb push_back
#define pii pair<int,int>
#define f first
#define s second
#define all(x) x.begin(),x.end()
#define ub(a,b) upper_bound(a.begin(),a.end(),b)-a.begin();
#define lb(a,b) lower_bound(a.begin(),a.end(),b)-a.begin();
#define vi vector<int>
#define vll vector<ll>
#define pll pair<ll,ll>
#define sz(x) x.size()
#define T pair<double,string>
using namespace std;
const int mxn=2e5+5;
int main(){
    ios_base::sync_with_stdio(0);cin.tie(0);
    int n,m;cin>>n>>m;
    int s[n+1]={0},f[m+1]={0};
    for(int i=1;i<=n;i++)cin>>s[i];for(int i=1;i<=m;i++)cin>>f[i];
    int l=0,r=1e9+1;
    int lr[n+1]={0};
    while(l<r){
        int k=(l+r)>>1;
        int idx=1;memset(lr,0,sizeof lr);
        bool ch=0;
        for(int i=1;i<=n;i++){
            while(idx<=m&&s[i]-k<=f[idx]&&f[idx]<=s[i])idx++,lr[i]=1;
            while(idx<=m&&s[i]<=f[idx]&&f[idx]<=s[i]+k&&lr[i]!=1)idx++,lr[i]=2;
            if(idx<=m&&s[i]-k>f[idx]&&f[idx]<=s[i])ch=1;
            if(idx<=m&&s[i]+k<f[idx]&&f[idx]>=s[i]&&i==n)ch=1;
        }if(idx!=m+1)ch=1;
        if(ch)l=k+1;
        else r=k;
    }if(l==1e9+1){cout<<-1;return 0;}
    memset(lr,0,sizeof lr);int idx=1;
    for(int i=1;i<=n;i++){
        while(idx<=m&&s[i]-l<=f[idx]&&f[idx]<=s[i])idx++,lr[i]=1;
        while(idx<=m&&s[i]<=f[idx]&&f[idx]<=s[i]+l&&lr[i]!=1)idx++,lr[i]=2;
    }cout<<l<<'\n';
    for(int i=1;i<=n;i++)cout<<(lr[i]==1?"L":"R");
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:21:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   21 |     for(int i=1;i<=n;i++)cin>>s[i];for(int i=1;i<=m;i++)cin>>f[i];
      |     ^~~
Main.cpp:21:36: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   21 |     for(int i=1;i<=n;i++)cin>>s[i];for(int i=1;i<=m;i++)cin>>f[i];
      |                                    ^~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Correct
2 Correct 1 ms 348 KB Correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 348 KB Correct
2 Correct 11 ms 1372 KB Correct
3 Incorrect 0 ms 344 KB User solution is worse than jury's solution
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Correct
2 Correct 10 ms 1600 KB Correct
3 Correct 3 ms 600 KB Correct
4 Correct 48 ms 3548 KB Correct
5 Correct 31 ms 3420 KB Correct
6 Correct 0 ms 348 KB Correct
7 Correct 0 ms 348 KB Correct
8 Correct 37 ms 3648 KB Correct
9 Correct 36 ms 3628 KB Correct
10 Correct 39 ms 3528 KB Correct
11 Correct 31 ms 2136 KB Correct
12 Correct 24 ms 2332 KB Correct
13 Correct 26 ms 2640 KB Correct
14 Correct 43 ms 2768 KB Correct
15 Correct 30 ms 2904 KB Correct
16 Correct 21 ms 2392 KB Correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Correct
2 Correct 1 ms 348 KB Correct
3 Incorrect 0 ms 344 KB User solution is worse than jury's solution
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Correct
2 Incorrect 11 ms 1764 KB User solution is worse than jury's solution
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Correct
2 Correct 1 ms 348 KB Correct
3 Correct 11 ms 1372 KB Correct
4 Incorrect 0 ms 344 KB User solution is worse than jury's solution
5 Halted 0 ms 0 KB -