Codeforces 1345


#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<map>
#include<queue>
#include<vector>
#include<string>
#include<fstream>
using namespace std;
#define rep(i, a, n) for(int i = a; i <= n; ++ i);
#define per(i, a, n) for(int i = n; i >= a; -- i);
typedef long long ll;
const int N = 3e6 + 105;
const int mod = 998244353;
const double Pi = acos(- 1.0);
const int INF = 0x3f3f3f3f;
const int G = 3, Gi = 332748118;
ll qpow(ll a, ll b) { ll res = 1; while(b){ if(b) res = (res * a) % mod; a = (a * a) % mod; b >>= 1;} return res; }
ll gcd(ll a, ll b) { return b ? gcd(b, a % b) : a; }
//
ll T, n;
ll a[N];
map<ll,int>mp;
 
int main()
{
    scanf("%lld",&T);
    ll num = 1e9;
    while(T--){
        scanf("%lld",&n);
        mp.clear();
        for(ll i = 0; i < n; ++ i){
            scanf("%lld",&a[i]);
            //cout<<i<<" "<<(i + a[i] % n + n) % n<<endl;
            mp[(i + a[i] % n + n) % n] ++;
        }
        int flag = 0;
        for(ll i = 0; i < n; ++ i){
            if(!mp[i]||mp[i] > 1) flag = 1;
        }
        if(flag) printf("NO\n");
        else printf("YES\n");
    }
    return 0;
}
posted @ 2020-05-07 10:56  A_sc  阅读(134)  评论(0编辑  收藏  举报