代码
注意:题干中说 “重复” ,意思是至少出现 2次,所以输出时要做一个判断。
#include<iostream>
#include<map>
using namespace std;
map<int,int> mp;
int main() {
int n,x;
cin>>n;
for(int i=1; i<=n; i++) {
cin>>x;
mp[abs(x-i)]++;
}
for(auto it=mp.rbegin(); it!=mp.rend(); it++) {
if(it->second>=2)
cout<<it->first<<" "<<it->second<<endl;
}
return 0;
}