1
2001年全国青少年信息学(计算机)奥林匹克分区联赛复赛试题
(高中组 竞赛用时: 3小时)
题一 一元三次方程求解( 20分)
问题描述
有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数 (a,b,c,d 均为实数),并约
定该方程存在三个不同实根 (根的范围在 -100至100之间),且根与根之差的绝对值 >=1。要求由小到大依次在同一
行输出这三个实根 (根与根之间留有空格 ),并精确到小数点后 2位。
提示:记方程 f(x)=0,若存在 2个数x1和x2,且x1<x2,f(x1)*f(x2)<0,则在(x1,x2)之间一定有一个 根。
样例
输入:1 -5 -4 20
输出:-2.00 2.00 5.00
题二 数的划分(20分)
问题描述
将整数n分成k份,且每份不能为空,任意两种分法不能相同 (不考虑顺序 )。
例如:n=7,k=3,下面三种分法被认为是相同的。
1,1,5; 1,5,1; 5,1,1;
问有多少种不同的分法。
输入:n,k (6<n<=200,2<=k<=6)
输出:一个整数,即不同的分法。
样例
输入: 7 3
输出:4 {四种分法为: 1,1,5;1,2,4;1,3,3;2,2,3;}
题三 统计单词个数 (30分)
问题描述
给出一个长度不超过 200的由小写英文字母组成的字母串 (约定;该字串以每行 20个字母的方式输入,且保证每行
一定为20个)。要求将此字母串分成 k份(1<k<=40),且每份中包含的单词个数加起来总数最大 (每份中包含的单词
可以部分重叠。当选用一个单词之后,其第一个字母不能再用。例如字符串 this中可包含 this和is,选用this
之后就不能包含 th)。
单词在给出的一个不超过 6个单词的字典中。
要求输出最大的个数。
输入格式
去部输入数据放在文本文件 input3.dat中,其格式如下:
第一行为一个正整数 (0<n<=5)表示有n组测试数据
每组的第一行有二个正整数 (p,k)
p表示字串的行数 ;
k表示分为 k个部分。
接下来的 p行,每行均有 20个字符。
再接下来有一个正整数 s,表示字典中单词个数。 (1<=s<=6)
2
接下来的 s行,每行均有一个单词。
输出格式
结果输出至屏幕,每行一个整数,分别对应每组测试数据的相应结果。
样例
输入:
1
1 3
thisisabookyouareaoh
4
is
a
ok
sab
输出: //说明:(不必输出)
7 // this/isabookyoua/reaoh
题四 Car的旅行路线 (30分)
问题描述
又到暑假了,住在城市 A的Car想和朋友一起去城市 B旅游。她知道每个城市都有四个飞机场,分别位于一个矩形
的四个顶点上,同一个城市中两个机场
NOIP2001提高组复赛试题,2001年NOIP信息学奥赛提高组复赛C++真题