結果

問題 No.3067 +10 Seconds Clock
ユーザー ゼリトキ
提出日時 2025-03-21 23:22:40
言語 C++23
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 36 ms / 2,000 ms
コード長 799 bytes
コンパイル時間 3,608 ms
コンパイル使用メモリ 273,352 KB
実行使用メモリ 8,320 KB
最終ジャッジ日時 2025-03-21 23:22:46
合計ジャッジ時間 5,369 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define ll long long
#define INF 9e18;
int main(){
    cin.tie(0)->sync_with_stdio(0);
    cout.tie(0);
    ll N,T,K;
    cin>>N>>T;
    ll t[200009],x[200009];
    for(int i=1;i<=N-1;i++) cin>>t[i];
    cin>>K;
    for(int i=1;i<=K;i++) cin>>x[i];
    ll plus[200009];
    for(int i=1;i<=N;i++) plus[i]=0;
    for(int i=1;i<=K;i++) plus[x[i]]=1;
    ll tyokin=0;
    ll ans=0;
    for(int i=1;i<=N-1;i++){
        T-=t[i];
        if(T<=0){
            while(T<=0){
                T+=10;
                tyokin--;
                ans++;
            }
        }
        if(tyokin<0){
            cout<<-1<<endl;
            return 0;
        }
        tyokin+=plus[i+1];
    }
    cout<<ans<<endl;
}
0