QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#824765#9770. Middle Pointucup-team4474#WA 0ms4136kbC++202.5kb2024-12-21 15:41:092024-12-21 15:41:11

Judging History

This is the latest submission verdict.

  • [2024-12-21 15:41:11]
  • Judged
  • Verdict: WA
  • Time: 0ms
  • Memory: 4136kb
  • [2024-12-21 15:41:09]
  • Submitted

answer

#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cassert>
#include<cstdio>
#include<cctype>
#include<vector>
#include<bitset>
#include<random>
#include<ctime>
#include<queue>
#include<cmath>
#include<list>
#include<map>
#include<set>
#define pb push_back
#define mp make_pair
#define pii pair<int,int>
#define pll pair<long long,long long>
#define FF fflush(stdout)
#define inf 0x3f3f3f3f
#define endl "\n"
#define fi first
#define se second
typedef long long ll;
typedef unsigned long long ull;
using namespace std;
//char buf[1<<20],*p1,*p2;
//#define getchar() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<20,stdin),p1==p2)?EOF:*p1++)
inline int read()
{
    int s=0,f=1;
    char x=getchar();
    while(!isdigit(x))f=(x=='-'?-1:1),x=getchar();
    while(isdigit(x))s=s*10+x-'0',x=getchar();
    return s*f;
}
const int p=1e9+7;
//ll ksm(int a,int b){ll ans=1,bs=a;while(b){if(b&1)ans=ans*bs%p;bs=bs*bs%p;b>>=1;}return ans;}
mt19937 rd(time(0));
#define reaD read
void dfs(vector<pair<pii,int>> &ans,int l,int r,int x,int d,int op=0)
{
    int mid=(l+r)>>1;
    ans.pb(mp(mp(l*d,r*d),op));
    if(mid==x)
    {
        return ;
    }
    if(mid<x)dfs(ans,mid,r,x,d,0);
    else dfs(ans,l,mid,x,d,1);
}
vector<pair<pii,int>> sol(int a,int x)
{
    vector<pair<pii,int>> ans;
    if(x==0||x==a)return ans;
    int aa=a;
    while(aa%2==0)aa>>=1;
    if(x%aa)
    {
        puts("-1");
        exit(0);
    }
    dfs(ans,0,a/aa,x/aa,aa);
    return ans;
}
int main()
{
    int a=read(),b=read(),x=read(),y=read();
    vector<pair<pii,int>> a1=sol(a,x),a2=sol(b,y);
    vector<pii> A1,A2;
    if(a1.size()<a2.size())
    {
        int T=a2.size()-a1.size();
        int now=T;
        while(T--)
        {
            if(x!=0&&(x==a||a2[now].se==1))
            {
                A1.pb(mp(a,a));
            }
            else
            {
                A1.pb(mp(0,0));
            }
        }
    }
    if(a1.size()>a2.size())
    {
        int T=a1.size()-a2.size();
        int now=T;
        while(T--)
        {
            if(y!=0&&(y==b||a1[now].se==1))
            {
                A2.pb(mp(b,b));
            }
            else
            {
                A2.pb(mp(0,0));
            }
        }
    }
    for(auto o:a1)A1.pb(o.fi);
    for(auto o:a2)A2.pb(o.fi);
    printf("%d\n",(int)(A1.size()));
    for(int i=0;i<A1.size();i++)
    {
        printf("%d %d %d %d\n",A1[i].fi,A2[i].fi,A1[i].se,A2[i].se);
    }
    return 0;
}
/*

128 256
21 192
*/

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 4028kb

input:

2 2
1 1

output:

1
0 0 2 2

result:

ok correct!

Test #2:

score: 0
Accepted
time: 0ms
memory: 4060kb

input:

8 8
5 0

output:

3
0 0 8 0
4 0 8 0
4 0 6 0

result:

ok correct!

Test #3:

score: 0
Accepted
time: 0ms
memory: 3780kb

input:

0 0
0 0

output:

0

result:

ok correct!

Test #4:

score: 0
Accepted
time: 0ms
memory: 4028kb

input:

2024 0
1012 0

output:

1
0 0 2024 0

result:

ok correct!

Test #5:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

2024 2024
2023 2023

output:

-1

result:

ok correct!

Test #6:

score: 0
Accepted
time: 0ms
memory: 4136kb

input:

8 6
7 3

output:

3
0 0 8 0
4 0 8 0
6 0 8 6

result:

ok correct!

Test #7:

score: 0
Accepted
time: 0ms
memory: 4060kb

input:

2024 2026
2024 2026

output:

0

result:

ok correct!

Test #8:

score: 0
Accepted
time: 0ms
memory: 3804kb

input:

1000000000 1000000000
70 0

output:

-1

result:

ok correct!

Test #9:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

3 6
2 4

output:

-1

result:

ok correct!

Test #10:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

7 7
7 2

output:

-1

result:

ok correct!

Test #11:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

6 2
5 2

output:

-1

result:

ok correct!

Test #12:

score: 0
Accepted
time: 0ms
memory: 3868kb

input:

5 7
5 5

output:

-1

result:

ok correct!

Test #13:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

4 7
2 3

output:

-1

result:

ok correct!

Test #14:

score: 0
Accepted
time: 0ms
memory: 3776kb

input:

8 2
2 2

output:

2
0 2 8 2
0 2 4 2

result:

ok correct!

Test #15:

score: 0
Accepted
time: 0ms
memory: 3712kb

input:

3 3
0 2

output:

-1

result:

ok correct!

Test #16:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

7 7
1 4

output:

-1

result:

ok correct!

Test #17:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

6 3
6 1

output:

-1

result:

ok correct!

Test #18:

score: 0
Accepted
time: 0ms
memory: 3728kb

input:

4 2
2 1

output:

1
0 0 4 2

result:

ok correct!

Test #19:

score: 0
Accepted
time: 0ms
memory: 3580kb

input:

7 2
3 2

output:

-1

result:

ok correct!

Test #20:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

2 7
0 3

output:

-1

result:

ok correct!

Test #21:

score: 0
Accepted
time: 0ms
memory: 3772kb

input:

1 7
1 0

output:

0

result:

ok correct!

Test #22:

score: 0
Accepted
time: 0ms
memory: 3852kb

input:

5 1
0 0

output:

0

result:

ok correct!

Test #23:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

8 7
4 3

output:

-1

result:

ok correct!

Test #24:

score: 0
Accepted
time: 0ms
memory: 3896kb

input:

180057652 674822131
110693180 428023738

output:

-1

result:

ok correct!

Test #25:

score: 0
Accepted
time: 0ms
memory: 3604kb

input:

62347541 812142018
42922107 486416913

output:

-1

result:

ok correct!

Test #26:

score: 0
Accepted
time: 0ms
memory: 3716kb

input:

239604722 244429197
78993837 108804105

output:

-1

result:

ok correct!

Test #27:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

416861903 381749084
375027630 373683256

output:

-1

result:

ok correct!

Test #28:

score: 0
Accepted
time: 0ms
memory: 3584kb

input:

594119084 519068971
429116021 298715088

output:

-1

result:

ok correct!

Test #29:

score: -100
Wrong Answer
time: 0ms
memory: 3852kb

input:

536870912 536870912
233225286 372408647

output:

29
0 0 0 536870912
0 268435456 536870912 536870912
0 268435456 268435456 402653184
134217728 335544320 268435456 402653184
201326592 369098752 268435456 402653184
201326592 369098752 234881024 385875968
218103808 369098752 234881024 377487360
226492416 369098752 234881024 373293056
230686720 3711959...

result:

wrong answer (218103808,369098752) is not in S