当前位置:首页 >> 学科竞赛 >>

教案050903-全面的考虑问题


专题:全面的考虑问题 1、最长公共子串(noi93 第一题)文件名 string.pas, string.in. string.out 求 N 个字符串的最长公共子串,N<20,字符串长度不超 255。 例如 N=3, 由文件依次输入 3 个字符串为 What is locla bus ? Name some local buses . local bus is a high speed I/Obus close to the processor . 则最长公共子串为“local bus”长度为 9 输入: 3 What is local bus ? Name some local buses . local bus is a high speed I/Obus close to the processor . 输出: 9 2、项链(ioi93t1 usacogate/broken necklace)文件名 necklace.pas,necklace.in,necklace.out 有一条 n(3<n<350)个珠子穿成的项链,珠子有红(red) 、蓝(blue) 、白(white)三 种颜色,分别使用字母 r,b,w 来代表。如图所示:

1 2 r b b r r r r b b b b r b b r r r b r Figure A r r b r r r b b b r w r b r b r r r b w b

1 2 b r r b b r r w r b b r r r b r r w Figure B

项链可以从某一个位置断开, 然后从断开的位置沿着两个方向收集珠子。 相同颜色的珠 子能被收集到一块,白色的珠子能和蓝色的收集成一堆也能和红色的收集成一堆。 问题:给定一个项链,问从哪里断开收集的珠子总个数最多。 输入样例: (第一行是一个数字,表示项链中的珠子数;第二行是每个珠子颜色) 29 wwwbbrwrbrbrrbrbrwrwwrbwrwrrb 输出样例: (输出结果是最多收集的珠子个数) 11

3、剔除多余括号 bracket.pas, bracket.in, bracket.out 键盘输入一个含有括号的四则运算表达式,可能含有多余的括号(假设所有括号配对, 并且最多只有一层) ,编程整理该表达式,去掉所有多余的括号,原表达式中所有变量和运 算符相对位置保持不变,并保持与原表达式等价。 例:输入表达式 应输出表达式 a+(b+c) a+b+c (a*b)+c/d a*b+c/d a+b/(c-d) a+b/(c-d) 注意输入 a+b 时不能输出 b+a。 表达式以字符串输入,长度不超过255。输入不要判错。 所有变量为单个小写字母。只是要求去掉所有多余括号,不要求对表达式化简。 输入样例: a+(b+c) 输出样例: a+b+c


相关文章:
更多相关标签: