結果
問題 |
No.123 カードシャッフル
|
ユーザー |
![]() |
提出日時 | 2020-07-27 00:25:22 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 28 ms / 5,000 ms |
コード長 | 907 bytes |
コンパイル時間 | 758 ms |
コンパイル使用メモリ | 102,616 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-28 19:43:46 |
合計ジャッジ時間 | 1,606 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 10 |
ソースコード
#include<iostream> #include<algorithm> #include<vector> #include<string> #include<utility> #include<map> #include<set> #include<queue> #include<stack> #include<functional> #include<math.h> #include<random> #include <bitset> using namespace std; //#define N (1000000000+7) #define N 998244353 #define INF 1e16 typedef long long ll; typedef pair<int,int> P; typedef pair<int,P> Q; const int inf = (int)1e9; ll gcd(ll a, ll b) { if (b > a) { ll tmp = b; b = a; a = tmp; } if (a%b == 0)return b; else return gcd(b, a%b); } int main(void){ int n,m; cin>>n>>m; vector<int>A(n); for(int i=1;i<=n;i++)A[i-1]=i; for(int i=0;i<m;i++){ int a; cin>>a; vector<int>b(n); b[0]=A[a-1]; ll X = A[a-1]; int index = 0; for(int i=1;i<n;){ if(X==A[index]){ index++; continue; } else{ b[i]=A[index]; index++; i++; } } A = b; } cout<<A[0]<<endl; return 0; }