定安县网站建设_网站建设公司_Python_seo优化
2025/12/21 0:56:29 网站建设 项目流程

一般路人向第40次CCF-CSP认证(275/500)

官方解析:https://dl.ccf.org.cn/video/videoDetail.html?id=7808351746705408

考试前一天:怎么这次还是一般路人向?从CSP39以来一直有一个练算法的冲动,,,仅仅是冲动。直到考试前一天我去来不及了。凉拌吧。练了练大模拟,全都不会做hhh,上考场了。

考试当天:ohno起晚了,去印资料、吃个饭,到考点只剩十分钟不到了。进考场之后发现自己考位的电脑居然没有电脑鼠标,老师也找不到,寄。过了会儿老师拿了俩键盘鼠标回来给其他同学了,原来别人还有相同状况的。接着我再跟老师说,老师再去给找,拿来赶紧插上开机,正好 13:30 ,比赛开始,立马断网,没法配 vs 或者 vscode 的环境,只好拿起来快两年没碰的 dev c++ 了。
长记性了吧。早点去比什么都好。

仅代码,题解待更新。

T1 (100)

#include<stdio.h>
int xorcmp(int*a, int*b, int*set)
{int x=set[a[1]];int y=set[b[1]];for(int i=2;i<=a[0];i++){x=x^set[a[i]];}for(int i=2;i<=b[0];i++){y=y^set[b[i]];}if(x==y){return 1;}else{return 0;}
}
int realcmp(int* a, int* b, int*set)
{if(set[a[0]]!=set[b[0]]){return 0;}else{for(int i=1;i<=a[0];i++){if(set[a[i]]!=set[b[i]]){return 0;} }return 1;}
}
int m,n;
int a[10005];
int s[105][10005];
int t[105][10005];
int main()
{scanf("%d %d",&n, &m);for(int i=1;i<=n;i++){scanf("%d", &a[i]);}for(int i=1;i<=m;i++){scanf("%d", &s[i][0]);for(int j=1; j<=s[i][0]; j++){scanf("%d", &s[i][j]);}}for(int i=1;i<=m;i++){scanf("%d", &t[i][0]);for(int j=1; j<=t[i][0]; j++){scanf("%d", &t[i][j]);}}for(int i=1;i<=m;i++){if(realcmp(s[i],t[i],a)==xorcmp(s[i],t[i],a)){printf("correct\n");}else{printf("wrong\n");} }return 0; 
}

T2 (100)

#include<stdio.h>
void toeight(int n, int *n1, int*n2,int*n3)
{*n3=n%8;n=n/8;*n2=n%8;n=n/8;*n1=n%8;
}
int f(int n, int k)
{return ((n*n+k*k)%8)^k;
}
int m,n;
int k[1005];
int qst[500005];
int res[520]; 
int a,b,c;
int a0,b0,c0;
int main()
{scanf("%d %d", &n, &m);for(int i=1;i<=m;i++){scanf("%d", &k[i]);}for(int i=1;i<=n;i++)	{scanf("%d", &qst[i]);}for(int i=0;i<512;i++){toeight(i,&a,&b,&c);for(int j=1;j<=m;j++){a0=a;b0=b;c0=c;a=b;b=c0^f(b0,k[j]);c=a0^f(c0,k[j]);} res[i]=a*64+b*8+c;}for(int i=1;i<=n;i++){for(int j=0;j<512;j++){if(res[j]==qst[i]){printf("%d ",j);}}}return 0;
}

T3 (75)

效率不高,有 25% 的大样例 TLE。

#include<stdio.h>
int z,knum;
int n,m;
char a[405][405];
int t,op,u,v,l,d,r,o;
char aold[405][405];
int k[50005][6];
void shun(char a[][405],char aold[][405],int z,int u,int v, int l)
{for(int i=u;i<u+l;i++){for(int j=v;j<v+l;j++){aold[i][j]=a[i][j];}}for(int i=u;i<u+l;i++){for(int j=v;j<v+l;j++){a[j-v+u][u+v+l-1-i]=aold[i][j];}}
}
void ni(char a[][405],char aold[][405],int z,int u,int v, int l)
{for(int i=u;i<u+l;i++){for(int j=v;j<v+l;j++){aold[i][j]=a[i][j];}}for(int i=u;i<u+l;i++){for(int j=v;j<v+l;j++){a[v+u+l-1-j][i-u+v]=aold[i][j];}}	
}
void decode1(char a[][405],char aold[][405],int z,int u,int v,int l,int d,int r)
{for(int i=1;i<=r;i++){shun(a,aold,z,1,1,z);}for(int i=1;i<=d/90;i++){ni(a,aold,z,u,v,l);}
}
void decode2(char a[][405],char aold[][405],int z,int u,int d, int l, int r, int o)
{if(o==1){for(int i=u;i<=d;i++){for(int j=l;j<=r;j++){aold[i][j]=a[i][j];}}for(int i=u;i<=d;i++){for(int j=l;j<=r;j++){a[u+d-i][j]=aold[i][j];}}}else{for(int i=u;i<=d;i++){for(int j=l;j<=r;j++){aold[i][j]=a[i][j];}}for(int i=u;i<=d;i++){for(int j=l;j<=r;j++){a[i][l+r-j]=aold[i][j];}}}
}
int main()
{scanf("%d",&z);for(int i=1;i<=z;i++){scanf("%s",&a[i][1]); }scanf("%d",&knum);scanf("%d",&t);for(int j=1;j<=t;j++){scanf("%d %d %d %d %d %d",&k[j][0],&k[j][1],&k[j][2],&k[j][3],&k[j][4],&k[j][5]); }for(int j=t;j>=1;j--){if(k[j][0]==1){decode1(a,aold,z,k[j][1],k[j][2],k[j][3],k[j][4],k[j][5]);}else{decode2(a,aold,z,k[j][1],k[j][2],k[j][3],k[j][4],k[j][5]);}}for(int i=z;i>=1;i--){if(a[i][1]!='?'){n=i;break;}}for(int i=z;i>=1;i--){if(a[1][i]!='?'){m=i;break;}}for(int i=1;i<=z;i++){a[i][m+1]='\0';}printf("%d %d\n",n,m);for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){printf("%c",a[i][j]);}printf("\n");}return 0;
}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询