結果

問題 No.3434 [Cherry 8th Tune N] 大きくして Hold on Card!
コンテスト
ユーザー tau1235
提出日時 2026-01-23 21:29:20
言語 C++23
(gcc 15.2.0 + boost 1.89.0)
結果
AC  
実行時間 230 ms / 2,000 ms
コード長 666 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 3,939 ms
コンパイル使用メモリ 345,792 KB
実行使用メモリ 12,928 KB
最終ジャッジ日時 2026-01-23 21:29:45
合計ジャッジ時間 22,616 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 43
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include<bits/stdc++.h>
using namespace std;

void solve(){
  using ll=long long;
  int n;
  cin>>n;
  vector<ll> a(n),b(n);
  vector<pair<ll,ll>> vp(n);
  for (int i=0;i<n;i++){
    cin>>a[i];
    vp[i]={a[i],i};
  }
  for (int i=0;i<n;i++) cin>>b[i];
  vector<ll> sa(n+1),sb(n+1);
  sort(vp.begin(),vp.end());
  for (int i=0;i<n;i++){
    sa[i+1]=sa[i]+vp[i].first;
    sb[i+1]=sb[i]+b[i];
  }
  pair<ll,ll> p={-1e18,-1};
  for (int i=0;i<=n;i++){
    ll s=sa[n]-sa[i]+sb[i];
    p=max(p,{s,i});
  }
  int k=p.second;
  string ans(n,'0');
  for (int i=0;i<k;i++) ans[vp[i].second]='1';
  cout<<ans<<endl;
}

int main(){
  int t;
  cin>>t;
  while (t--) solve();
}
0