7.12 Cf

avatar
作者
猴君
阅读量:0

Problem - 1955B - Codeforces

思路

因为b数组的顺序是乱的,所以要进行排序后,比较正确数组跟b数组是否一致

ac代码
#include<bits/stdc++.h> typedef long long ll; #define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0) using namespace std;  int main() {     IOS;     int T;     cin>>T;     while(T--)     {         ll n,c,d;         cin>>n>>c>>d;         vector<ll> b(n*n);          for(int i=0;i<n*n;i++) cin>>b[i];         sort(b.begin(),b.end());          vector<ll> p(n*n);         p[0]=b[0];         for(int i=1;i<n;i++) p[i]=p[i-1]+c;          for(int i=1;i<n;i++)         {             for(int j=0;j<n;j++)             {                 p[i*n+j] = p[(i-1)*n+j]+d;             }         }         sort(p.begin(),p.end());         if(b==p) cout<<"YES"<<endl;         else cout<<"NO"<<endl;     }     return 0; }
注意

因为b.begin() , b.end(),所以下标从0开始

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!