結果
問題 | No.397 NO MORE KADOMATSU |
ユーザー | 6v8 |
提出日時 | 2016-07-15 23:33:34 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 27 ms / 2,000 ms |
コード長 | 1,191 bytes |
コンパイル時間 | 827 ms |
コンパイル使用メモリ | 95,316 KB |
実行使用メモリ | 25,220 KB |
平均クエリ数 | 36.06 |
最終ジャッジ日時 | 2024-07-17 00:08:17 |
合計ジャッジ時間 | 2,511 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 18 |
ソースコード
#include <sstream> //string stream 便利! #include<string> #include<iostream> #include<utility> //pair #include <vector> // 可変長配列 #include <algorithm> // swap,sort,binary_search #include <functional> // 昇順sortに使う greaterが入ってる。 sortの三番目の引数。 #include <map> //map #include<set> //set #include<queue> //キュー #include<list> //list #include<cmath> #include<cassert> #include <numeric> #include<tuple> #include<iomanip> typedef long long ll; #define ARRAY_LENGTH(array) (sizeof(array) / sizeof(array[0])) using namespace std; void omajinai() { cin.tie(0); ios::sync_with_stdio(false); } map<char,char> m; int main(){ vector<pair<int,int>> v; int n; cin>>n; vector<int> a(n); for(int i =0 ; i<n;i++) cin>>a[i]; for(int i = 0; i<n;i++){ vector<int>::iterator x = max_element(a.begin()+i, a.end()); long dif = distance(a.begin() + i,x); if(dif != 0){ v.push_back(make_pair(i,i+dif)); swap(*x,*(a.begin() + i));} } cout<<v.size()<<endl; for(pair<int,int> p: v){ cout<<p.first<<" "<<p.second<<endl; } cout.flush(); cin.ignore(); }