Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
28835 LYLAKIOI 【BJ】T1 C++ 解答错误 80 62 MS 276 KB 9828 2024-04-29 14:46:52

Tests(46/47):


#include<bits/stdc++.h> #define up(i,l,r) for(int i=(l);i<=(r);++i) #define down(i,l,r) for(int i=(l);i>=(r);--i) #define pi pair<int,int> #define m_p make_pair #define p_b push_back #define p1 first #define p2 second using namespace std; typedef long long ll; const int maxn=1e6+10; inline ll read(){ ll x=0;short t=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')t=-1;ch=getchar();} while(ch>='0'&&ch<='9')x=x*10+ch-'0',ch=getchar(); return x*t; } struct node1 { const string d="ZZJJSLTTIOLSOI"; const int a[80]={0,0,2,3,1,0,1,1,0,0,2,0,0,0}; const int b[80]={1,1,1,1,2,2,3,4,4,5,5,6,6,7}; const int c[80]={1,3,5,7,1,4,3,1,5,4,6,1,7,3}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_7_8; struct node2 { const string d="ZLSSTZTIJJIOLO"; const int a[80]={0,3,1,1,1,1,3,1,1,1,1,0,1,0}; const int b[80]={1,1,2,3,4,5,6,7,8,9,10,11,12,13}; const int c[80]={1,3,1,3,1,2,3,1,2,3,4,1,3,1}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_14_4; struct node3 { const string d="ZLSSSSLLJJJJIZTZTTTIOZIOIOLO"; const int a[80]={0,3,1,1,1,1,1,3,3,1,3,1,1,0,1,1,3,1,3,1,0,1,1,0,1,0,1,0}; const int b[80]={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}; const int c[80]={1,3,1,3,1,3,1,2,3,1,1,3,4,1,1,2,3,1,2,4,1,2,1,3,2,3,1,3}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_28_4; struct node4 { const string d="ZZLSJZLJJJZLSJZILZLLJOSSSITTITITITSOTOOOOI"; const int a[80]={0,0,3,1,3,0,1,3,1,3,0,3,1,3,1,1,1,1,0,0,3,0,0,1,0,1,3,1,1,1,1,3,1,2,1,0,0,0,0,0,0,0}; const int b[80]={1,1,1,2,3,3,4,4,5,6,7,7,8,9,9,9,10,11,12,13,13,14,15,16,16,16,17,18,18,19,20,20,21,22,23,23,24,25,26,26,27,28}; const int c[80]={1,3,5,1,2,4,1,3,5,5,1,3,1,2,4,6,1,4,1,3,5,1,2,1,3,6,4,1,3,4,2,5,1,3,3,5,1,5,1,3,5,1}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_28_6; struct node5 { const string d="ZLSSSSSSSSLLJJJJJJJJIZLLIOZLLZIOTZTZZTZTIOTTTTIOIOIOIOLO"; const int a[80]={0,3,1,1,1,1,1,1,1,1,1,3,3,1,3,1,3,1,3,1,1,0,1,3,1,0,1,1,3,1,1,0,1,1,1,1,1,3,1,3,1,0,3,1,3,1,1,0,1,0,1,0,1,0,1,0}; const int b[80]={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}; const int c[80]={1,3,1,3,1,3,1,3,1,3,1,2,3,1,1,3,3,1,1,3,4,1,1,2,4,1,2,1,3,2,1,3,2,3,1,3,1,3,1,2,4,1,2,1,3,2,1,3,2,3,1,3,2,3,1,3}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_56_4; struct node6 { const string d="ZJSZZSJZLZLLZSSLSJOLSLZSSLSJOLSLZJJJJLJZZITTTTJIOTTOOOTTTOITOIIIOOIIII"; const int a[80]={0,2,1,1,1,1,3,1,1,1,0,0,0,1,0,0,1,3,0,1,0,0,0,1,0,0,1,3,0,1,0,0,0,0,1,3,1,1,3,1,1,1,3,3,1,0,3,0,0,1,3,0,0,0,3,0,1,0,1,3,0,1,0,0,0,0,1,0,0,0}; const int b[80]={1,1,2,2,3,4,5,5,6,7,8,9,10,11,11,12,13,14,14,15,16,17,18,19,19,20,21,22,22,23,24,25,26,27,27,28,29,29,30,31,32,33,33,34,35,36,37,38,39,39,40,41,42,43,43,44,45,46,46,47,48,49,50,51,52,52,53,54,55,56}; const int c[80]={1,3,1,3,4,1,2,4,1,4,1,3,1,1,3,3,1,2,4,1,3,3,1,1,3,3,1,2,4,1,3,3,1,1,4,4,1,3,1,4,2,1,4,2,4,1,4,1,1,3,4,1,3,1,4,2,1,3,5,1,3,1,2,2,2,4,1,2,2,2}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_56_5; struct node7 { const string d="OJJOJJOJJOIOOILIZLLZIZZIZSLLSZITSTSTTSTTSL"; const int a[80]={0,3,0,0,3,0,0,3,0,0,1,0,0,1,3,1,1,0,2,1,1,1,1,1,1,0,0,2,0,1,1,3,1,1,0,3,1,0,3,1,0,0}; const int b[80]={1,1,3,5,5,7,9,9,11,13,13,15,17,17,19,20,21,23,25,26,26,28,30,30,32,34,35,37,38,39,40,41,43,44,46,47,48,50,51,52,54,55}; const int c[80]={1,2,1,1,2,1,1,2,1,1,3,1,1,3,1,1,2,1,1,1,3,1,1,3,1,1,1,1,1,2,1,2,2,1,1,2,1,1,2,1,1,1}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_56_3; struct node8 { const string d="SSTIZLZTLOOJJI"; const int a[80]={1,1,1,0,0,0,0,1,3,0,0,1,3,1}; const int b[80]={1,3,5,8,1,6,3,4,1,5,7,1,2,5}; const int c[80]={1,1,1,1,2,2,3,3,4,5,5,6,6,7}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_8_7; struct node9 { const string d="SJTSTZZLOLIOJI"; const int a[80]={1,0,2,0,0,0,0,3,0,2,0,0,3,1}; const int b[80]={1,3,1,2,3,1,3,1,1,3,4,1,1,1}; const int c[80]={1,1,2,3,4,5,6,7,9,9,10,11,12,14}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_4_14; struct node10 { const string d="SJTSTZZLOLIOJISJTSTZZLOLIOJI"; const int a[80]={1,0,2,0,0,0,0,3,0,2,0,0,3,1,1,0,2,0,0,0,0,3,0,2,0,0,3,1}; const int b[80]={1,3,1,2,3,1,3,1,1,3,4,1,1,1,1,3,1,2,3,1,3,1,1,3,4,1,1,1}; const int c[80]={1,1,2,3,4,5,6,7,9,9,10,11,12,14,15,15,16,17,18,19,20,21,23,23,24,25,26,28}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_4_28; struct node11 { const string d="OOOOOOILILIIILILLLJJJJJSTSSTZTTSZZTSZZSTZJ"; const int a[80]={0,0,0,0,0,0,1,2,1,0,1,1,1,2,1,0,3,1,0,1,3,2,1,0,0,1,0,2,1,0,0,1,0,0,2,1,0,1,0,2,1,3}; const int b[80]={1,3,5,1,3,5,1,5,1,5,1,1,1,5,1,5,1,2,1,3,4,1,3,5,3,1,5,1,2,5,3,1,5,1,3,4,1,3,5,1,2,4}; const int c[80]={1,1,1,3,3,3,5,5,6,6,7,8,9,9,10,10,11,11,13,13,13,14,15,15,16,17,17,18,19,19,20,21,21,22,23,23,24,25,25,26,27,27}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_6_28; struct node12 { const string d="SJTSTZZLOLIOJISJTSTZZLOLIOJISJTSTZZLOLIOJISJTSTZZLOLIOJI"; const int a[80]={1,0,2,0,0,0,0,3,0,2,0,0,3,1,1,0,2,0,0,0,0,3,0,2,0,0,3,1,1,0,2,0,0,0,0,3,0,2,0,0,3,1,1,0,2,0,0,0,0,3,0,2,0,0,3,1}; const int b[80]={1,3,1,2,3,1,3,1,1,3,4,1,1,1,1,3,1,2,3,1,3,1,1,3,4,1,1,1,1,3,1,2,3,1,3,1,1,3,4,1,1,1,1,3,1,2,3,1,3,1,1,3,4,1,1,1}; const int c[80]={1,1,2,3,4,5,6,7,9,9,10,11,12,14,15,15,16,17,18,19,20,21,23,23,24,25,26,28,29,29,30,31,32,33,34,35,37,37,38,39,40,42,43,43,44,45,46,47,48,49,51,51,52,53,54,56}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_4_56; struct node13 { const string d="OOLOLOOLOLOOLOLOLSLLJLJJJIJJJJIJJITSSSSISSSSISTTTTTTTZTIZZZZIZZIZIZTZI"; const int a[80]={0,0,0,0,3,0,0,0,0,3,0,0,0,0,3,0,2,0,2,0,1,3,0,2,0,0,2,0,2,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,1}; const int b[80]={1,3,4,1,3,1,3,4,1,3,1,3,4,1,3,1,3,4,1,4,2,3,1,1,3,5,3,1,1,3,5,3,1,1,3,2,4,2,4,1,2,4,2,4,1,2,4,2,4,1,4,1,3,1,3,5,1,3,1,3,5,1,3,1,3,5,2,1,4,1}; const int c[80]={1,1,1,3,3,5,5,5,7,7,9,9,9,11,11,13,13,13,15,15,16,17,18,19,19,19,20,22,23,23,23,24,26,27,27,28,28,30,30,31,32,32,34,34,35,36,36,38,38,39,40,41,41,43,43,43,45,45,47,47,47,49,49,51,51,51,52,54,54,56}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_5_56; struct node14 { const string d="OLLOLLOLLOIOOIJISJJSISSISZJJZSITZTZTTZTTZJ"; const int a[80]={0,0,3,0,0,3,0,0,3,0,0,0,0,0,0,0,0,3,1,0,0,0,0,0,0,1,3,1,1,0,0,0,0,2,1,0,2,1,0,2,1,3}; const int b[80]={1,2,1,1,2,1,1,2,1,1,3,1,1,3,1,1,2,1,1,1,3,1,1,3,1,1,1,1,1,2,1,2,2,1,1,2,1,1,2,1,1,1}; const int c[80]={1,1,3,5,5,7,9,9,11,13,13,15,17,17,19,20,21,23,25,26,26,28,30,30,32,34,35,37,38,39,40,41,43,44,46,47,48,50,51,52,54,55}; void print(int x,int y){ int len=d.length(); up(i,0,len-1)printf("%c%d %d %d\n",d[i],a[i],b[i]+x-1,c[i]+y-1); } }_3_56; void print(int x,int y,bool fl,int id){ if(fl)id+=7,swap(x,y); if(id==1)_7_8.print(x,y); else if(id==2)_14_4.print(x,y); else if(id==3)_28_4.print(x,y); else if(id==4)_28_6.print(x,y); else if(id==5)_56_4.print(x,y); else if(id==6)_56_5.print(x,y); else if(id==7)_56_3.print(x,y); else if(id==8)_8_7.print(x,y); else if(id==9)_4_14.print(x,y); else if(id==10)_4_28.print(x,y); else if(id==11)_6_28.print(x,y); else if(id==12)_4_56.print(x,y); else if(id==13)_5_56.print(x,y); else _3_56.print(x,y); } void slv(){ int n=read(),m=read(); if((n*m)%56){ printf("No\n");return; } const int _78=1; const int _14_4=2; const int _28_4=3; const int _28_6=4; const int _56_4=5; const int _56_5=6; const int _56_3=7; bool fl=0; if(n%7)fl=1,swap(n,m); if(m%8==0){ printf("Yes\n"); for(int i=1;i<=n;i+=7){ for(int j=1;j<=m;j+=8){ print(i,j,fl,_78); } }return; } if(m%4==0){ printf("Yes\n"); for(int i=1;i<=n;i+=14){ for(int j=1;j<=m;j+=4){ print(i,j,fl,_14_4); } }return; } if(m%2==0){ m-=6; printf("Yes\n"); for(int i=1;i<=n;i+=28){ for(int j=1;j<=m;j+=4){ print(i,j,fl,_28_4); } } for(int i=1;i<=n;i+=28){ print(i,m+1,fl,_28_6); } return; } if(m<=2){ printf("No\n");return; } printf("Yes\n"); if(m%3==0){ for(int i=1;i<=n;i+=56){ for(int j=1;j<=m;j+=3){ print(i,j,fl,_56_3); } }return; } if(m%3==1){ m-=4; for(int i=1;i<=n;i+=56){ for(int j=1;j<=m;j+=3){ print(i,j,fl,_56_3); } } for(int i=1;i<=n;i+=56){ print(i,m+1,fl,_56_4); } return; } if(m%3==2){ m-=5; for(int i=1;i<=n;i+=56){ for(int j=1;j<=m;j+=3){ print(i,j,fl,_56_3); } } for(int i=1;i<=n;i+=56){ print(i,m+1,fl,_56_5); } return; } }int main(){ // freopen("teris.in","r",stdin); // freopen("teris.out","w",stdout); slv(); fclose(stdin); fclose(stdout); return 0; }


测评信息: