北邮2011网研机试(回忆)

非常感谢2011年考研的师兄给的分享,今年早就听说机考比去年难很多,果然如此,终于不是一直的那种 "c语言练习题"类型的题目了。

——————————————————————————————————————————————————

01  读入一组字符串(待操作的),再读入一个int n记录记下来有几条命令,总共有2中命令(命令格式第一位0代表翻转,1代表替换;第二位代表待操作的字符串的起始下标int i;第三位表示需要操作的字符串长度int len;):1、翻转  从下标为i的字符开始到i+len-1之间的字符串倒序;2、替换  命中如果第一位为1,用命令的第四位开始到最后的字符串替换原读入的字符串下标 i 到 i+len-1的字符串。每次执行一条命令后新的字符串代替旧的字符串(即下一条命令在作用在得到的新字符串上)
   input:bac
               2
               003
               112as
    output:cab
                  cas

02  一个复数(x+iy)集合,两种操作作用在该集合上:1、Pop 表示读出集合中复数模值最大的那个复数,如集合为空 输出  empty  ,不为空就输出最大的那个复数并且从集合中删除那个复数,再输出集合的大小SIZE;2 Insert a+ib  指令(a,b表示实部和虚部),将a+ib加入到集合中 ,输出集合的大小SIZE;(差不多就是这样的意思 具体记不清了 这题刚刚做的差不多就下考了,还有些别的小要求,无关大局,印象不深。)  最开始要读入一个int n,表示接下来的n行每一行都是一条命令。

03  好像是跟树有关的  没时间看;

04 读入一个文法 (每一行表示一个产生式) 输出该文法的 first 集  (具体例子就记不清了)

  ps:个人感觉第二题最好做,第一题很多人在编译器能做出结果就是提交不上去,浪费很多时间在改程序上了,再就是尽量多写一些代码,感觉改不到AC就做下一题,因为老师可以看到你提交的代码的,老师也理解由于没做过ACM,一些格式、边界值或者临界条件什么没考虑清楚导致的程序无法提交。
————————————————————————————————————————————

还是非常感谢~~~~谢~~~谢~~~

你可能感兴趣的:(c,input,insert,语言,编译器,output)