結果

問題 No.1959 Prefix MinMax
ユーザー suzuken_w
提出日時 2022-05-27 22:22:49
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 55 ms / 2,000 ms
コード長 1,501 bytes
コンパイル時間 2,052 ms
コンパイル使用メモリ 214,912 KB
最終ジャッジ日時 2025-01-29 16:06:44
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

#pragma GCC optimize("O3")
#include<bits/stdc++.h> 
using namespace std;
using ll=long long;
using P=pair<ll,ll>;
template<class T> using V=vector<T>; 
#define fi first
#define se second
#define all(v) (v).begin(),(v).end()
const ll inf=(1e18);
//const ll mod=998244353;
const ll mod=1000000007;
const vector<int> dy={-1,0,1,0},dx={0,-1,0,1};
struct __INIT{__INIT(){cin.tie(0);ios::sync_with_stdio(false);cout<<fixed<<setprecision(15);}} __init;
template<class T> bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; }
template<class T> bool chmin(T &a, const T &b) { if (a>b) { a=b; return 1; } return 0; }
template<class T>void debag(const vector<T> &a){cerr<<"debag :";for(auto v:a)cerr<<v<<" ";cerr<<"\n";}
template<class T>void print(const vector<T> &a){for(auto v:a)cout<<v<<" ";cout<<"\n";}
void solve(){
  int n;
  cin>>n;
  V<int> res1(n),res2(n);
  cout<<"? ";
  for(int i=0;i<n-1;i++){
        cout<<(i%2);
        if(i!=n-2)cout<<" ";
        else cout<<endl;
  }
  for(int i=0;i<n;i++)cin>>res1[i];
  cout<<"? ";
  for(int i=0;i<n-1;i++){
        cout<<((i%2)^1);
        if(i!=n-2)cout<<" ";
        else cout<<endl;
  }
  for(int i=0;i<n;i++)cin>>res2[i];
  V<int> ans(n);
  ans[0]=res1[0];
  for(int i=1;i<n;i++){
    if(res1[i-1]!=res1[i])ans[i]=res1[i];
    if(res2[i-1]!=res2[i])ans[i]=res2[i];
  }
  cout<<"! ";
  for(int i=0;i<n;i++){
      cout<<ans[i];
      if(i!=n-1)cout<<" ";
      else cout<<endl;
  }
}
int main(){
  int t;
  cin>>t;
  while(t--)solve();
}
0