QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#781687#9799. Magical PalettexxWA 10ms13504kbC++205.1kb2024-11-25 16:56:522024-11-25 16:56:53

Judging History

你现在查看的是最新测评结果

  • [2024-11-25 16:56:53]
  • 评测
  • 测评结果:WA
  • 用时:10ms
  • 内存:13504kb
  • [2024-11-25 16:56:52]
  • 提交

answer

#include<bits/stdc++.h>
#define int long long
#define ll long long
#define yes cout<<"Yes\n";
#define no cout<<"No\n";
#define ok cout<<"OK\n";
#define pii pair<int,int>
#define pis pair<int,string>
#define endl "\n"
typedef long long LL;
using namespace std;
// const int N=5e5+10;
// int mod=1e9+7;
// int p[N];
// int a[N];
// struct node {
//     int l,r,mn,mx,res;
// }tr[N*4];
// int find(int x) {
//     if(x==p[x])return  x;
//     return p[x]=find(p[x]);
// }
// void js(int p,int l,int r) {
//     tr[p]={l,r};
//     if(l==r) {
//         tr[p].mn=tr[p].res=tr[p].mx=a[l];
//         return;
//     }
//     int mid=(l+r)/2;
//     js(p,l,mid);
//     js(p,mid+1,r);
//     tr[p].mn=min(tr[p*2].mn,tr[p*2+1].mn);
//     tr[p].mx=max(tr[p*2].mx,tr[p*2+1].mx);
// }
// int findmn(int p,int l,int r,int pl,int pr) {
//     if(pl<=r&&r<=pr) {
//             return tr[p].mn;
//     }
//     int mid=(l+r)/2;
//     if(pr<=mid)return  findmn(p,l,mid,pl,pr);
//     else if(pl>mid)return findmn(p,mid+1,r,pl,pr);
//     else return min(findmn(p,l,mid,pl,pr),findmn(p,mid+1,r,pl,pr) );
// }
//
// int findmx(int p,int l,int r,int pl,int pr) {
//     if(pl<=r&&r<=pr) {
//         return tr[p].mx;
//     }
//     int mid=(l+r)/2;
//     if(pr<=mid)return  findmx(p,l,mid,pl,pr);
//     else if(pl>mid)return findmx(p,mid+1,r,pl,pr);
//     else return max(findmx(p,l,mid,pl,pr),findmx(p,mid+1,r,pl,pr) );
// }
//5 7 3 6

// int dfn[N],low[N];
// using ull = unsigned long long;
// const ull P = 133331;
//
// struct Hash {
//     const int n;
//     std::vector<ull> p, h1, h2;
//     std::string s;
//     Hash(std::string s_) : s(s_), n(s_.size() - 1), h1(n + 2), h2(n + 2), p(n + 2) { // idx by 1
//         p[0] = 1; h1[0] = 0, h2[0] = 0;
//         for(int i = 1 ; i <= n ; i ++) p[i] = p[i - 1] * P;
//         for(int i = 1 ; i <= n ; i ++) h1[i] = h1[i - 1] * P + s_[i];
//         for(int i = n ; i >= 1 ; i --) h2[i] = h2[i + 1] * P + s_[i];
//     }
//
//     ull get(int l, int r) { // s[l] s[l + 1] ... s[r]
//         return h1[r] - h1[l - 1] * p[r - l + 1];
//     }
//
//     ull get_unnomal(int l, int r, int L, int R) { // s[l] s[l + 1] ... s[r] s[L] s[L + 1]...s[R]
//         return get(l, r) * p[R - L + 1] + get(L, R);
//     }
//
//     ull get_rev(int l, int r) { // s[r] s[r - 1] ... s[l]
//         return h2[l] - h2[r + 1] * p[r - l + 1];
//     }
//
//     ull modify(std::string &s, int idx, char c) { // 修改 idx 位为 x的hash值
//         return h1[n] + p[n - idx] * (c - s[idx]);
//     }
// };
const int N=1e6+10;
map<int,int> mp;
int st[N];
void init(){
    for(int i=2;i<=1e6;i++){
        if(st[i]==0){
            for(int j=i+i;j<=1e6;j+=i){
                if(j==499999){
                    cout<<i<<" "<<j<<endl;
                }
                st[j]++;
            }
        }
    }
}
/*

1
1 10000
*/
int a[N],b[N];
void solve() {

    int n,m;
    cin>>n>>m;
    //cout<<st[n]<<" "<<st[m]<<endl;
    if((st[n]<=2&&st[m]<=2&&n!=m)||(n!=m&&(n==2||m==2))){
        if(n<m){
            cout<<"Yes\n";
            for(int i=1;i<=n;i++){
                a[i]=i;
                cout<<a[i]<<" ";
            }cout<<endl;
            b[1]=1;

            for(int i=2;i<=m;i++){
                b[i]=b[i-1]+n;

            }
            for(int i=1;i<=m;i++){
                cout<<b[i]<<" ";
            }cout<<endl;

        }
        else {
                cout<<"Yes\n";
            for(int i=1;i<=m;i++){
                b[i]=i;
            }
            a[1]=1;
            //cout<<endl;
            for(int i=2;i<=n;i++){
                a[i]=a[i-1]+m;

            }
            //cout<<endl;
            for(int i=1;i<=n;i++){
                cout<<a[i]<<" ";
            }cout<<endl;

            for(int i=1;i<=m;i++){
                cout<<b[i]<<" ";
            }cout<<endl;
        }
        //
    }
    else if(n==1){
        cout<<"Yes\n";
        for(int i=1;i<=n;i++){
            a[i]=i;
            cout<<a[i]<<" ";
        }cout<<endl;
        b[1]=1;

        for(int i=2;i<=m;i++){
            b[i]=b[i-1]+n;

        }
        for(int i=1;i<=m;i++){
            cout<<b[i]-1<<" ";
        }cout<<endl;

    }
    else if(m==1){
            cout<<"Yes\n";
            for(int i=1;i<=m;i++){
                b[i]=i;
            }
            a[1]=1;
            //cout<<endl;
            for(int i=2;i<=n;i++){
                a[i]=a[i-1]+m;

            }
            //cout<<endl;
            for(int i=1;i<=n;i++){
                cout<<a[i]-1<<" ";
            }
            cout<<endl;
            for(int i=1;i<=m;i++){
                cout<<b[i]<<" ";
            }
            cout<<endl;
    }
    else {
        cout<<"No\n";
    }

}

signed main(){

#ifdef ACM
     freopen("input.in","r",stdin);
     freopen("output.out","w",stdout);
#endif
    // ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    int T=1;
    init();
    cin>>T;
    while(T--) {
        solve();
    }
    return 0;
}
/*

*/

详细

Test #1:

score: 0
Wrong Answer
time: 10ms
memory: 13504kb

input:

2
2 3
2 2

output:

31 499999
127 499999
Yes
1 2 
1 3 5 
No

result:

wrong answer Token parameter [name=verdict] equals to "31", doesn't correspond to pattern "Yes|No" (test case 1)