总结一下本次比赛我出现的一些问题
一、首先,scanf("%s",str);
用的比较少,导致,我遇到了某些题(样例中,没有具体的结束标识,没有说输入0表示本样例结束,或者说,在样例开始的时候,就已经说明了有几个例子)
NEUQ OJ 密码截获
这道题其实非常简单,就是求一个最长回文串的长度,我那个时候,就是因为这个读入的问题,导致一直都没有作对这道题。
输入描述
测试数据有若干行字符串,包括字母,数字,符号。(字母区分大小写)
输出描述
与输入相对应每一行输出一个整数,代表最长有效密码串的长度。
样例输入
ABBA
12ABBA
A
ABAKK
51233214
abaaab
样例输出
4
4
1
3
6
5
//下面是我的错误代码
#include <iostream>
#include <string>
using namespace std;
int get_max_len(string str);
int main(){
string str;
while(1){
cin >> str;
if(str.length() == 0) break;
cout << get_max_len(str) << endl;
}
return 0;
}
//正确代码应该这样写
#include <iostream>
#include <string.h>
using namespace std;
char str[1024];
int get_max_len(char str[]);
int main(){
//这种字符串读入格式我该好好学学
while(scanf("%s", str) != EOF){
cout << get_max_len(str) << endl;
}
}
二、这次比赛还是心态没有调整好,中间遇到了一道简单题一直没有做出来,我就开始紧张了。
尤其是最后几个小时,我那个时候心情非常低落,就是由于前期没有调整好心态,一道题没做出来,直接影响了我的整个心情。我印象非常清楚,我在最后的时候我的手都开始抖了(一个原因是我写了三个多小时了有点累了;其次就是我很紧张,如果我还做不出那道题,我就进不了省赛了。)我到底什么时候才能调整好心态呢?一遇到重要的考试,我犯一点错,我就紧张的不行,
我到底什么时候才能改过这个毛病呀。