7.29日考试记录
机房模考:2019.7.29
这套题应该算经典的吧不然为什么要考233。
上面题目应该在各大OJ都可以找到。
而且本人以前应该做过233 那还考的这么差
题目难度整体不大,题量总共6道,但水分给得很足,切掉两题只要10分钟左右吧
所以来分析题目:
1. 1+1=?
源程序名 add.pas/add.cpp
输入文件名 add.in
输出文件名 add.out
时间限制 1s
空间限制 64MB
1+1=?
这个问题的答案可谓仁者见仁,智者见智。
如果在小学智力竞赛试卷上出现了 1+1=?的题目,有多少人会答 2呢?我不知道,而且
对于这道题目来说,这也不重要。
在这个题目中,你并不需要动歪脑筋,问你 1+1=? 你回答2 就可以了。
输入
仅一行,符合格式 A+B,0<=A,B<=60000(A,B 为整数)文件不含空格,数字开头无多余的
零。
输出
仅一行,即 A与B的和。
样例
add.in
113+355
add.out
468
题目看起来很水,然后…确实是真的很水/笑哭。就是一个非常非常简单的A+B problem。然后我们看看题解是怎么做的…
递归累加,LCT,树状数组,Splay,SPFA,Dijkstra,Floyd,压位高精,你值得拥有23333
好吧我看不下去了
Code:
#include<bits/stdc++.h>
using namespace std;
int a,b;
int main(){
freopen("add.in","r",stdin);
freopen("add.out","w",stdout);
scanf("%d+%d",&a,&b);
printf("%d",a+b);
}
2. FIX
源程序名 fix.pas/fix.cpp
输入文件名 fix.in
输出文件名 fix.out
时间限制 1s
空间限制 64MB
如果单词X由单词 Y的前若干个字母构成,我们称X是 Y的前缀,例如“c”、“ca”、“cat”
是单词“cat”的前缀;类似地如果单词 X 由单词 Y 的最后若干个字母构成,我们称 X 是 Y
的后缀,例如“t”、“at”、“cat”是单词“cat”的后缀。请你编一程序判断一组单词是否
满足任一单词都不是其它单词的前缀且任一单词都不是其它单词的后缀。
输入
输入文件共有 3N+1行,其中第一行包含一个正整数N(N<=10),表示要你作出判断的单
词总组数,每组单词有三个。接下来的 3N 行每行一个单词,每个单词长度不超过255。
输出
输出文件共有 N行,每行输出一个“Yes”或“No”,表示对相应的三个单词给出的判断
结果,满足条件输出“Yes”,不满足条件输出“No”。
样例
fix.in
2
abba
aab
bab
a
ab
aa
fix.out
Yes
No
模拟大水题,其实本人看到此题差点就动手KMP了,一看数据,一手简单的字符串模拟/笑哭。简直让我想起了一道字符串模拟经典好题山东OI猪国杀,
完美的养生模拟好题,令人神清气爽,心旷神怡恨不得赶紧打完不想浪费生命。
直接贴吧写的好丑的
Code:
#include<bits/stdc++.h>
using namespace std;
const int MAX_LONG=300;
int n,len[3];
char s[11][3][MAX_LONG];
int main(){
freopen("fix.in","r",stdin);
freopen("fix.out","w",stdout);
scanf("%d",&n);
for(int o=0;o<n;o++){
for(int i=0;i<3;i++)
scanf("%s",s[o][i]),len[i]=strlen(s[o][i]);
bool flag=0,ok1=0,ok2=0;;
for(int i=0;i<2;i++){
for(int j=i+1;j<3;j++){
ok1=0,ok2=0;
int lenm=min(len[i],len[j]);
for(int k=0;k<lenm;k++){
if(s[o][i][k]!=s[o][j][k]) ok1=1;
if(s[o][i][len[i]-1-k]!=s[o][j][len[j]-1-k]) ok2=1