結果
問題 |
No.397 NO MORE KADOMATSU
|
ユーザー |
![]() |
提出日時 | 2017-05-19 03:39:17 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 40 ms / 2,000 ms |
コード長 | 712 bytes |
コンパイル時間 | 1,690 ms |
コンパイル使用メモリ | 134,700 KB |
最終ジャッジ日時 | 2025-01-05 00:23:40 |
ジャッジサーバーID (参考情報) |
judge4 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 18 |
ソースコード
#include <cstdio> #include <cstring> #include <cmath> #include <cassert> #include <random> #include <vector> #include <algorithm> #include <array> #include <functional> #include <utility> #include <regex> #include <tuple> #include <map> using namespace std; int main(){ int64_t n; -scanf("%ld",&n); vector<int> a(n); for(int i=0;i<n;i++){ -scanf("%d",&a[i]); } vector<array<int64_t,2>> u; for(auto it=a.begin();it<a.end();it++){ auto maxe=min_element(it,a.end()); if(it!=maxe){ u.push_back({it-a.begin(),maxe-a.begin()}); swap(*it,*maxe); } } printf("%ld\n",u.size()); fflush(stdout); for(auto i:u){ printf("%ld %ld\n",i[0],i[1]); fflush(stdout); } -scanf("%ld",&n); return 0; }