回 帖 发 新 帖 刷新版面

主题:奥运编程题集

看你们能做出来几道题。
加分规则如下:
1.20分
2.10分
3.30分
4.10分
5.10分

1.乒乓球
【问题背景】
国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白11分制和21分制对选手的不同影响。在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙。
【问题描述】
华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在11分制和21分制下双方的比赛结果。比如现在有这么一份记录,(其中W表示华华获得一分,L表示华华对手获得一分):WWWWWWWWWWWWWWWWWWWWWWLW
在11分制下,此时比赛的结果是华华第一局11比0获胜,第二局11比0获胜,正在进行第三局,当前比分1比1。
而在21分制下,此时比赛结果是华华第一局21比0获胜,正在进行第二局,比分2比1。
【特别说明】
在11分制下10平以后一方必须比另一方多2分或少2分该局才算结束。
在21分制下20平以后一方必须比另一方多2分或少2分该局才算结束。
【输入格式】
每个输入文件E:\data-4\table?.in包含若干行字符串(每行至多20个字母),字符串有大写的W、L和E组成。其中E表示比赛信息结束,程序应该忽略E之后的所有内容。
【输出格式】
每个输出文件E:\data-4\table?.out由两部分组成,每部分有若干行,每一行对应一局比赛的比分。其中第一部分是11分制下的结果,第二部分是21分制下的结果,两部分之间由一个空行分隔。
【输入样例】WWWWWWWWWWWWWWWWWWWWWWLWE
【输出样例】11:0
            11:0 
            1:1
            
            21:0
            2:1

2.足球比赛排名问题
【问题描述】
有八个国家举行足球友谊赛,东道主是中国(CHINA)。
开幕式由英文字母表排序的次序(东道主除外)出场,东道主排在最后。这八个国家是:FRANCE、INDIA、CHINA、U.S.A、CANADA、ITALY、PAKISTAN、MEXICO
请你编个程序,按上述要求排出开幕式的国家入场次序表。
【输入格式】
键盘输入N的值,再输入N个国家的名称。
【输出格式】
输出出场顺序。
【输入样例】5
            INDIA
            FIJI
            BRASIL
            AUSTRAILIA
            CHINA
【输出样例】AUSTRAILIA
            BRASIL
            FIJI
            INDIA
            CHINA

3.篮球统计表
【问题描述】美国与立陶宛进行篮球决赛。键盘将输入一组字符串,”A”代表美国获胜,“L”代表立陶宛获胜,“E”代表一节结束,共四节。如果第四个E后还有,那么就是加时赛。如果四节后双方的比分已经分出胜负,但是后面还有数据,则输出“ERROR!”提示。
【特别说明】
若打平需进入延长赛,再打平进入二度延长赛,直到分出胜负为止,一度延长赛为“OT”,二度延长赛为“2OT”,三度延长赛为“3OT”,以此类推。
【输入格式】
键盘输入一行字符串,为比赛的胜负表。
【输出格式】
应输出本场比赛的胜负统计表。
【输入样例】AALALALALAALLALALLLLLLLLALALALAAAAALLALAALALALEAAALALALALAALLALLLALEAALALALALLLALALLLLALLEALALLALALALALALLALALALAALALALALLLALALLLLLAAAAALALAAALLAAAAALLAALAAALAAAAAAALAEAAALLAALLE

【输出样例】          1       2      3     4    OT    Total
            America  22     10     8     44    5      89
            Litavia   25      11    14    34    6      90

4.羽毛球得分问题
【问题描述】羽毛球单打决赛上,羽毛球落地时,需要判断落在哪一个地方,如果出界,算对方得分,如果落在得分区内,算自己得分。键盘将输入一个N*N的场地,并且将说明哪些是得分区,根据说明将羽毛球落地的区域判断出来是对方得分还是自己得分。
【输入格式】
键盘将输入三个数,N表示有一个N*N的场地,A和B代表羽毛球落在A行B列,然后还将输入若干个数,一行输一次,其中一行有两个数,代表几行几列,以0结束。
【输出格式】
如果羽毛球落在得分区里,就输出“YING LE”,否则输出“SHU LE”。
【输入样例】 5, 2, 3
             1, 1
             5, 1
             3, 2
             4, 1
             5, 1
             2, 3
             3, 4
             0
【输出样例】YING LE

5.跳水排行榜
【问题描述】有N名运动员参加跳水决赛。根据他们跳入水中激起的水花的高度来判别最后比赛的排名。
【特别说明】
激起的水花越低,排名越靠前。
【输入格式】
键盘输入的N为N名运动员,随后将输入N名运动员跳入水种激起的水花的高度。
【输出格式】
输出排名,并且输出金牌、银牌、铜牌得主。
【输入样例】 5
             2
             3
             4
            15
             1
【输出样例】1    5     1
            2    1     2
            3    2     3
            4    3     4
            5    4    15
            JIN PAI: No.5
            YIN PAI: No.1
            TONG PAI: No.2

回复列表 (共11个回复)

沙发

好难哦~!

板凳

1.
CLS
INPUT N$: N$ = MID$(N$, 1, LEN(N$) - 1)
FOR I = 1 TO LEN(N$)
IF MID$(N$, I, 1) = "W" THEN S = S + 1 ELSE P = P + 1
IF S = 11 AND ABS(S - P) > 2 THEN PRINT S; ":"; P: S = 0: P = 0
IF P = 11 AND ABS(S - P) > 2 THEN PRINT S; ":"; P: S = 0: P = 0
NEXT I
IF S OR P <> 0 THEN PRINT S; ":"; P: S = 0: P = 0
PRINT : PRINT
FOR I = 1 TO LEN(N$)
IF MID$(N$, I, 1) = "W" THEN S = S + 1 ELSE P = P + 1
IF S = 21 AND ABS(S - P) > 2 THEN PRINT S; ":"; P: S = 0: P = 0
IF P = 21 AND ABS(S - P) > 2 THEN PRINT S; ":"; P: S = 0: P = 0
NEXT I
IF S OR P <> 0 THEN PRINT S; ":"; P: S = 0: P = 0
END

3 楼

ZHANGHONGCHENG,尽管你的程序和老师讲解的思路差不多,但我仍然给你10分。

4 楼

.......

5 楼


2581461

6 楼

请多多指教

7 楼

洪新宇,你敢泄露资料胆子不小

8 楼

洪新宇,你现在有没有上学啊,为什么不留在学校呢?

9 楼

胆子的确是不小~

10 楼

2.for i=1 to 8
read a$(i)
next i
for i=1 to 7
k=i
for j=i +1 to 8
if a$(k)>a$(j) then k=j
next j
swap a$(i),a$(k)
next i
for i=1 to 8
if a$(i)<>"china" then print a$(i)
next i
? "china";end
data prance,india,china,u.s.a,canada,italy,pakisyan,mexico

我来回复

您尚未登录,请登录后再回复。点此登录或注册