OVa Online Judge 学习笔记- AOAPC I Volume 1. Elementary Problem Solving String

一、题目

二、做题笔记

1.10010 - Where's Waldorf?

技巧:采用二维数组存储及遍历字符,使用ctype对字符进行大小写转换,注意数组边界即可解决问题。

答题记录:AC

2.10361 - Automatic Poetry

技巧:putchar、gets输入输出函数使用,使用由字符串首地址加上偏移量形成的指针快速输出字符串后半部分;数组来存储匹配的字符索引值('<''>')方便定位。

采用标志位数组存储多个分界字符索引位置。

答题记录:AC

3.537 - Artificial Intelligence?

技巧:采用getchar判断及“过滤“字符。

答题记录:AC

4.409 - Excuses, Excuses!

技巧:采用标志位读取每行中单词的首尾索引。

答题记录:AC

5.10878 - Decode the tape

技巧:计算二进制表示字符串的值,可利用查表法快速找到对应位的系数并求解:list[8] = 1 2 4 8 16 ...(其他进制也是如此,适用于位数较少情况)。

答题记录:AC

6.10815 - Andy's First Dictionary

知识点:字符串字典序排序和字符串比较。

技巧:先开辟大区间读入所有字符串,利用qsort对字符串进行排序(自己写比较函数,相当于strcmp),接着通过strcmp比较字符串来输出不同的字符串(避免相同字符串)。

注意:尝试使用strcmp作为qsort参数进行字典排序,但发现由于参数不一致报错。

答题记录:AC

7.644 - Immediate Decodability

比较字符串局部时,可以建立缓存复制局部,结尾加入‘\n',再使用strcmp比较是否局部重复。

答题记录:WA

错误点:

1.数组长度没开辟够(由于索引关系需要长度+1)

2.两两遍历比较不完全,长度不同时需分开处理,而不是只比较一种情况。

8.10115 - Automatic Editing

知识点:字符串查找及替代。

技巧:这里利用的是字符串通过数组下表移位进行查找和替代,更简约的写法是利用字符串的几个函数进行处理,但可能没有那么高效。

答题记录:AC

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章