第三个测试样例一直因为时间超过而过不了,后来看了看柳神的文章,把字符串操作由string该为char型数组就好了。
然后还要关注一下判等操作,在此题中,不用判断整个字符串相等,只用判断某一个字符相等即可认定字符串相等。这样一来,运行时间就会减少一点。
另外加一点对于char字符串的知识,时间长就快忘了:
char A[20],B[20];
if(A==B)
此时不是判等字符串内容,而是判等字符串首地址
若要判断字符串内容,可用strcmp(A,B);
当A和B相等时,返回值为0;如果返回值小于0,则说明A小于B,返回值大于0,说明A大于B。
附注:strcmp()函数是根据ACSII码的值来比较两个字符串的;strcmp()函数首先将s1字符串的第一个字符值减去s2第一个字符,若差值为零则继续比较下去;若差值不为零,则返回差值。
PAT甲级1057题的一些思考
最新推荐文章于 2024-01-18 15:39:57 发布