QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#840380 | #9799. Magical Palette | frankly6# | TL | 61ms | 14272kb | C++17 | 1.8kb | 2025-01-02 17:51:55 | 2025-01-02 17:52:06 |
Judging History
answer
#include<iostream>
#include<cstdio>
#define int long long
using namespace std;
const int MX=1000010;
int T, N, M;
int ar[MX], br[MX];
bool vis[MX];
int read()
{
int r=0, f=1; char ch=getchar();
while(ch<'0'||ch>'9') {if(ch=='-') f=-1; ch=getchar();}
while(ch>='0'&&ch<='9') {r=r*10+ch-'0'; ch=getchar();}
return r*f;
}
int gcd(int a, int b){return b==0?a:gcd(b,a%b);}
signed main()
{
// freopen("testdata.in","r",stdin);
T=read();
while(T--)
{
N=read(); M=read();
int p=N*M;
bool ck=0;
for(int a=1;a<=N;a++)
{
if(gcd(a,N)!=1) continue;
for(int b=1;b<=M;b++)
{
if(gcd(b,M)!=1) continue;
if(gcd(a,b)!=1) continue;
// cout << "a=" << a << ", b=" << b << '\n';
for(int i=1;i<=N;i++) ar[i]=(1+(i-1)*a)%p;
for(int i=1;i<=M;i++) br[i]=(1+(i-1)*b)%p;
bool tag=0;
for(int i=1;i<=N;i++)
{
for(int j=1;j<=M;j++)
{
int now = (ar[i]*br[j]%p+p)%p;
if(vis[now]) {tag=1; break;}
vis[now]=1;
}
if(tag) break;
}
if(!tag)
{
ck=1; break;
}
for(int i=0;i<=N*M;i++) vis[i]=0;
}
if(ck) break;
}
if(ck)
{
cout << "Yes\n";
for(int i=1;i<=N;i++) cout << ar[i] << " "; cout << '\n';
for(int i=1;i<=M;i++) cout << br[i] << " "; cout << '\n';
}
else cout << "No\n";
}
return (0-0);
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 7792kb
input:
2 2 3 2 2
output:
Yes 1 2 1 3 5 No
result:
ok 2 cases (2 test cases)
Test #2:
score: 0
Accepted
time: 52ms
memory: 14272kb
input:
1 1 1000000
output:
Yes 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 1...
result:
ok 1 cases (1 test case)
Test #3:
score: 0
Accepted
time: 61ms
memory: 14092kb
input:
1 1000000 1
output:
Yes 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 ...
result:
ok 1 cases (1 test case)
Test #4:
score: -100
Time Limit Exceeded
input:
1 2 500000