我们注意到,这次输入输出的格式,是有一些要求的。
刚拿到手里的时候,不知道怎么才能满足它的要求,总以为这是不可能完成的任务。
跟老师/冉华师兄交流之后得到了一些启发,然后我尝试讲一下怎么满足这个格式。
首先,我们注意到,每一个程序都叫wf(好像废话),但这同一个wf能满足四个不同的需求。
那么,它是怎么实现的呢?
我们以c语言为例。我的尊师杨老师告诉我,任何一本c语言的书,都会讲到命令行参数。
命令行参数
argv是一个指向指针的指针,一个二维数组。(题外话,c和指针是一本有点意思的书)
https://baike.baidu.com/item/命令行参数/3206082?fr=aladdin
以功能一为例,wf后面的
-s test.txt就是命令行参数了。他俩存在字符数组argv[1],argv[2]里。argv[0]里是啥呢?是这个程序的路径及名称。(不一定对,我也是百度的。)
可能有些同学觉得处理目录那个有点难,http://www.cnblogs.com/summerRQ/articles/2375749.html
至于输入重定向,我的记忆里也是“每本c语言书(谭浩强)”都会有的。
讲到这里,聪明的你应该可以举一反三了。愚蠢的我再多写一些。
代码缩进
关于代码缩进,许多ide自带代码缩进,按一下就ok了。例:http://jingyan.baidu.com/article/95c9d20da20c5eec4e7561e6.html
输出格式控制
关于输出格式,百度某某语言格式控制。例:http://www.cnblogs.com/xuangong/archive/2011/07/29/2121537.html
例子比较敷衍,更好的例子请自己动手丰衣足食。
最后送几个坑点:老师给的数据可能算错了,不必排序再输出,排序费时间,以及每一个单词数total都是“不重复的单词数”(个人理解)。