A 出愚人节欢乐赛
B 你这题,狗屁不通
看到“牛客服务器上现在的时间”多次出现,猜测题意是要输出系统时间。
然后备注中UTC多次出现,所以要输出0时区的时间
#include<bits/stdc++.h> using namespace std; int main() { time_t timep; tm *p; time(&timep); p = gmtime(&timep); printf("%04d/%02d/%02d %02d:%02d:%02d", (1900+p->tm_year), (1+p->tm_mon), p->tm_mday, p->tm_hour, p->tm_min,p->tm_sec); return 0; }
C迁跃据数、I数据跃迁
这两个题需要二分评测姬。
首先能够想到,评测姬在ACM赛制下不止有AC和WA两种结果,实际上还包含TLE、RE等。
我们可以取最常见的TLE、RE、WA,三种结果作为信号。
首先编写这样一段代码
#include<bits/stdc++.h> using namespace std; void check(int l,int r) { while(l==r); int x; cin>>x; int mid=l+r>>1; assert(mid<x); } int main() { int l=1; int r=1000; ///--------------- //RE-> r=l+r>>1; //WA-> l=(l+r>>1)+1; //TLE-> l=r=input //根据评测结果作为信号,将信号翻译成代码往下填。 //终止信号为TLE信号,当接收到TLE信号时,将代码复制到本地编译运行。 ///--------------- cout<<l<<endl; check(l,r); return 0; }
将上述代码复制黏贴到C题“迁跃据数”中,点击提交。
如果结果是”答案错误“,就复制一行如下代码跟在后面
l=(l+r>>1)+1;
如果结果是“运行错误”,就复制一行如下代码跟在后面
r=l+r>>1;
如果结果是“运行超时”,那么好了,这个时候把代码从牛客评测机的代码框里面贴回本地,点击编译运行。
输出结果应该是 514(是114514的514)
#include<bits/stdc++.h> using namespace std; void check(int l,int r) { while(l==r); int x; cin>>x; int mid=l+r>>1; assert(mid<x); } int main() { int l=1; int r=1000; ///--------------- //RE-> r=l+r>>1; //WA-> l=(l+r>>1)+1; //TLE-> l=r=input //根据评测结果作为信号,将信号翻译成代码往下填。 //终止信号为TLE信号,当接收到TLE信号时,将代码复制到本地编译运行。 l=(l+r>>1)+1; r=l+r>>1; r=l+r>>1; r=l+r>>1; r=l+r>>1; r=l+r>>1; l=(l+r>>1)+1; l=(l+r>>1)+1; r=l+r>>1; l=(l+r>>1)+1; ///--------------- cout<<l<<endl; check(l,r); return 0; }
然后语言切换到PHP,提交I题”数据跃迁“,直接填写514点击提交。
因为现在已经知道I题的答案就是514了,所以相比以前,我们又多了AC这一种信号可以使用。
即,现在可用于编码的信号就变成了AC、WA、TLE、RE四种。恰好题目中的字符串也是'a','b','c','d'四种。
编写如下代码
#include<bits/stdc++.h> using namespace std; char s[10]; int main() { cin>>s; ///根据第i次提交的信号,注释相应的行 ///1 if(s[0]=='a'){cout<<514<<endl;return(0);} if(s[0]=='b')return(0); if(s[0]=='c')assert(0); if(s[0]=='d')while(1); ///2 if(s[1]=='a'){cout<<514<<endl;return(0);} if(s[1]=='b')return(0); if(s[1]=='c')assert(0); if(s[1]=='d')while(1); ///3 if(s[2]=='a'){cout<<514<<endl;return(0);} if(s[2]=='b')return(0); if(s[2]=='c')assert(0); if(s[2]=='d')while(1); ///4 if(s[3]=='a'){cout<<514<<endl;return(0);} if(s[3]=='b')return(0); if(s[3]=='c')assert(0); if(s[3]=='d')while(1); ///5 if(s[4]=='a'){cout<<514<<endl;return(0);} if(s[4]=='b')return(0); if(s[4]=='c')assert(0); if(s[4]=='d')while(1); return 0; }
把上述代码贴到I题“数据跃迁”当中,提交
如果结果为“答案正确”,就注释第一行。
如果结果为“答案错误”,就注释第二行。
如果结果为“运行错误”,就注释第三行。
如果结果为“运行超时”,就注释第四行。
#include<bits/stdc++.h> using namespace std; char s[10]; int main() { cin>>s; ///根据第i次提交的信号,注释相应的行 ///1 if(s[0]=='a'){cout<<514<<endl;return(0);} if(s[0]=='b')return(0); if(s[0]=='c')assert(0); //if(s[0]=='d')while(1); ///2 if(s[1]=='a'){cout<<514<<endl;return(0);} //if(s[1]=='b')return(0); if(s[1]=='c')assert(0); if(s[1]=='d')while(1); ///3 if(s[2]=='a'){cout<<514<<endl;return(0);} if(s[2]=='b')return(0); //if(s[2]=='c')assert(0); if(s[2]=='d')while(1); ///4 //if(s[3]=='a'){cout<<514<<endl;return(0);} if(s[3]=='b')return(0); if(s[3]=='c')assert(0); if(s[3]=='d')while(1); ///5 if(s[4]=='a'){cout<<514<<endl;return(0);} if(s[4]=='b')return(0); //if(s[4]=='c')assert(0); if(s[4]=='d')while(1); return 0; }
发现被注释掉的行依次是'd','b','c','a','c',说明C题的答案为字符串"dbcac",点击C题“迁跃据数”,切换语言为PHP,填入dbcac,提交。(编码的时候不能用函数或者define,不然会被编译器蛇皮优化掉,很烦)
D E
据说都暴力题,大概不需要题解?出题人给了代码,但是我懒得放了- -
Fqcjj背贯口
答案详解
刘备、关羽、张飞、赵云、曹操、徐庶、夏侯惇、颜良 8个
马 8个
龙 4个
豹 1个
虎 1个
蛇 1个
兽 1个
8 8 16
然后因为出题人不识数,所以愚人节快乐
(太阴间了
G 诡异的七重咒印
看数据找规律。
第一个数列,
第二个数列,
第三个数列,
第四个数列,
第⑤个数列,
第六个数列,
第七个数列,
使用快速幂计算即可。第⑤个需要欧拉降幂。
H. 氵林女女的记录本
每条记录都有小提示,根据提示去思考就可以了。
前面提示了气候变冷,从偏旁部首可以猜出歌手是许嵩。在许嵩《降温》里面有一句歌词“11月20日0点......今日消费是281人民币”,所以答案是 281。
第二次工业革命开始大概是19世纪60年代后期,从偏旁部首可以猜出歌手是陈奕迅,显然是《1874》里的歌词,所以答案是 1874。
本题提示写给李宗盛的歌,Google关键词致李宗盛发现第一条是杨宗纬的《越过山丘》,对比字形发现无误,所以查看歌词后发现答案是 20。
清楚姐姐的出生年份众所周知,从字形不难得出歌手是那英和王菲,所以这首歌是《相约1998》,答案是1998。
不难看出歌手是周杰伦,歌曲是《发如雪》,《红楼梦》第九十一回“布疑阵宝玉妄谈禅”里提到了宝玉思索半晌大笑道:“任凭弱水三千,我只取一瓢饮。”——宝玉用此典来回答黛玉的发问,意思是说宝钗的好与不好皆与我无关,我心中只有你一个人。因此答案是繁华如三千东流水里的3000。
本场比赛出题团共有5位(大概是愿意透露姓名?)的出题人
希望大家玩的开心~
出题人1
出题人2
出题人3
“qcjjyyds”
出题人4
出题人5
(匿了)
全部评论
(15) 回帖