結果
問題 |
No.365 ジェンガソート
|
ユーザー |
![]() |
提出日時 | 2016-04-30 00:34:25 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,660 bytes |
コンパイル時間 | 1,745 ms |
コンパイル使用メモリ | 173,432 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-04 23:36:44 |
合計ジャッジ時間 | 3,596 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 11 WA * 30 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define _GLIBCXX_DEBUG #define dump(c) cerr << "> " << #c << " = " << (c) << endl #define all(c) ((c).begin()), ((c).end()) #define rep(i, n) for(int i=0;i<(int)n;i++) #define FOR(i, s, e) for(int (i)=(int)(s);(i)<(int)(e);++(i)) #define inf 0x3f3f3f3f #define infl 0x3f3f3f3f3f3f3f3fLL typedef long long ll; typedef unsigned long long ull; void print_vector(vector<int> v){rep(i,v.size()){if(i<(int)v.size()-1){cout<<v[i]<<" ";}else{cout<<v[i]<<endl;}}} int main() { int N; cin >> N; vector<int> a(N); vector<int> b(N); vector<int> a_index(N+1); for (int i = 0; i < N; ++i) cin >> a[i]; b = a; sort(all(b)); // print_vector(a); // print_vector(b); int count = 0; // while(a!=b){ // print_vector(a); // for (int i = 0; i < N; ++i) { // a_index[a[i]] = i; // } // for (int i = N-1; i >= 0; --i) { // if (a_index[i+1]<a_index[i]){ // a.insert(a.begin(), i); // a.erase(a.begin()+a_index[i]+1); // break; // } // } // count++; // } int d = a[N-1]; for (int j = N-1; j >= 0; --j) { if (d < a[j]) { count++; }else{ d = a[j]; } } cout << count << endl; // int ans = 0; // for (int i = 0; i < N; ++i) { // ans = max(ans, a[i]-(i+1)); // } // // cout << ans << endl; // int ans = 0; // for (int i = 0; i < N-1; ++i) { // if (a[i]>a[i+1]) { // ans = max(ans, a[i+1]); // } // } // // cout << ans << endl; return 0; }