#include <bits/stdc++.h> using namespace std; typedef long long ll; void _1(){ int t; cin>>t; while(t--){ int n;cin>>n; string s;cin>>s; int flag=1; for(int i=0;i<n;i++){ while(s[i]==s[i+1])i++; for(int j=i+1;j<n;j++){ if(s[i]==s[j])flag=0; } } cout<<(flag?"YES":"NO")<<"\n"; } } inline int fan(int n){ int r=0; while(n){ r++; n/=10; } return r; } inline int uu(int len,int x){ int r=x; while(--len){ r=r*10+x; } return r; } void _2(){ ios::sync_with_stdio(false); int t; cin>>t; while(t--){ int n; cin>>n; int len=fan(n); int ans=9*(len-1); int k=0; for(int i=1;i<=10;i++){ k=uu(len,i);//cout<<"jj"<<k<<endl; if(k>n){ k=i-1;break; } } cout<<k+ans<<"\n"; } } mt19937 cowng(chrono::steady_clock::now().time_since_epoch().count()); vector<int>gen(int n){ while(true){ vector<int>arr(n); iota(begin(arr),end(arr),0); shuffle(begin(arr),end(arr),cowng); for(int i=0;i<n-1;i++) if(abs(arr[i]-arr[i+1])<=1)goto loop; return arr; loop:; } } void _3() { int n; cin>>n; if(n==1)cout<<1<<endl; else if(n==2)cout<<-1<<endl; else if(n==3)cout<<"2 9 7\n4 6 8\n1 8 5"<<endl; else{ vector<int>cur=gen(n); for(int i=0;i<n*n;i+=n){ vector<int>v; for(int j=i+1;j<=i+n;j++)v.push_back(j); for(int j=0;j<n;j++) cout<<v[cur[j]]<<" "; cout<<endl; } } } void _4() { int t; cin>>t; while(t--){ int n;cin>>n; int *a=new int[n+1]; map<int,ll>vis; set<int>se; ll ans=0; for(int i=1;i<=n;i++){ cin>>a[i]; vis[a[i]-i]++; se.insert(a[i]-i); } for(auto i:se){ if(vis[i]>1)ans+=1ll*vis[i]*(vis[i]-1)/2; } cout<<ans<<"\n"; } } int main() { cin.tie(0)->sync_with_stdio(false); cin.exceptions(ios::failbit); //_1(); //_2(); //_3(); //_4(); }
Codeforces Round #719 (Div. 3)
原文:https://www.cnblogs.com/qq1415584788/p/14733734.html