当前位置:首页 » 编程软件 » 题目编程大赛

题目编程大赛

发布时间: 2022-04-11 02:28:33

A. 关于编程大赛的一道题目,一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,找出这样的数并输出!

这个问题看起来不是很简单,需要设计一个算法

先讲数学:

设:

an=a+(n-1)*d(这里d=1)

a1=a

an=a+n-1

sn=(a1+an)n/2=(2a-1+n)/2

再回到这个编程上来:

我们的输入数据其实就是sn,需要找到以a开始的n个连续的递增数列使得和为sn。

这里我们可以用循环来判定,给定一个n,sn已知,就可以求出a,如果a为正整数那么就可以找到等差数列的首项,加上n给定,d=1,那么就可以写出这个和式子。

代码如下:

#include<stdio.h>

voidmain()

{

intinput,i,n,flag;

floata;//等差数列的首项不一定为整数

flag=0;

printf("输入判断的整数: ");

scanf("%d",&input);

for(n=2;n<=input;n++)

{

a=(2*input+n-n*n)/(2.0*n);//求的首项

if(int(a)==a&&a>0)//如果为整整数,则满足要求

{

printf("%d=%d",input,int(a));//输出的序列为整数,a实质是整数,那么强制转化类型不影响结果

for(i=1;i<=n-1;i++)

printf("+%d",int(a+i));//等差数列的其他项也为整数,a+i实质是整数,装换类型

printf(" ");

flag++;//flag记录满足要求的数列数

}

}

if(flag==0)//flag初始为0,通过上面的循环,如果有满足的在则不为0,为0则说明不能写成等差数列

printf("%d不能被表示成n连续正整数之和 ",input);

}

B. 世界编程大赛第一名写的程序

可能是你找的代码有误或DEBUG命令输错了,我在N年前运行都没问题!--顺便提一下,那程序写得真的很佩服!

C. 我们要参加程序设计大赛,不知道弄个什么题目,我们只学习了c语言

哈哈,我给你个题目,很有实际意义,把这个题目做出来你们团队绝对拿第一!!只要c语言基础就可以做,不存在任何系统调用。就是内存管理接口:对所有malloc分配的内存地址继续管理,包括异常处理(涉及到进程的栈知识),所申请的内存地址存储到一个哈希表中,然后再在内部用一个循环链表对为分配的内存地址进行管理(索引),挺难的,你可以参考《C语言接口与实现》里面全是c的基础知识实现的,对学习数据结构非常有价值。

D. 我想搞一个编程制作大赛 不限语言 大赛的水平要求一般就可以了(是大学生) 跪求高手指点

过二级啊~~~~~~我还没听说过我们学校信息学院的有那个同学想去考的,呵呵。
楼上的-_-b,象棋编程一旦搞起来,就是变相地鼓励同学们去抄代码……而围棋的编程,难度是在太大,整个网络知道都未必有人能写出个稍微好点的……

要是光是过二级的话。我觉得做一下类似于以下的就够格了:
初赛题:
1.通信录
2.图书馆管理
3.电梯调度算法
复赛题:
1.操作系统模拟设计
2.图像处理
3.简易搜索引擎设计
等等啦~~~~~~

E. 给我点程序设计大赛题目吧

现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge。除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库。

USACO

http://ace.delos.com/usacogate

美国着名在线题库,专门为信息学竞赛选手准备

TJU

http://acm.tongji.e.cn/

同济大学在线题库,唯一的中文题库,适合NOIP选手

ZJU

http://acm.zju.e.cn/

浙江大学在线题库

JLU

http://acm.jlu.e.cn/

吉林大学在线题库(一直上不去)

PKU

http://acm.pku.e.cn

北京大学在线题库

URAL

http://acm.timus.ru

俄罗斯乌拉尔大学在线题库

SGU

http://acm.sgu.ru/

俄罗斯圣萨拉托夫州大学在线题库

ELJ

http://acm.mipt.ru/judge/bin/problems.pl?lang=en

俄罗斯莫斯科物理技术学院

SPOJ

https://spoj.sphere.pl/

波兰格但斯克理工大学

UVA

http://acm.uva.es/

西班牙的Universidad de Valladolid在线题

ACM国际计算机组织背景情况介绍
(Association for Computing Machinery)
ACM The First Society in Computing 是一个国际科学教育计算机组织,它致力于发展在高
级艺术、最新科学、工程技术和应用领域中的信息技术。它强调在专业领域或在社会感兴趣的领
域中培养、发展开放式的信息交换,推动高级的专业技术和通用标准的发展。
1947年,即世界第一台电子数字计算机(ENIAC)问世的第二年,ACM即成为第一个,也一直是世界
上最大的科学教育计算机组织。它的创立者和成员都是数学家和电子工程师,其中之一是约翰.迈
克利(John.Mauchly),他是ENIAC的发明家之一。他们成立这个组织的初衷是为了计算机领域和新
兴工业的科学家和技术人员能有一个共同交换信息、经验知识和创新思想的场合。几十年的发展,
ACM的成员们为今天我们所称之为“信息时代”作出了贡献。他们所取得的成就大部分出版在ACM
印刷刊物上并获得了ACM颁发的在各种领域中的杰出贡献奖。例如:A.M.Turing奖和Grance Murr
—ay Hopper奖。
ACM组织成员今天已达到九万人之多,他们大部分是专业人员、发明家、研究员、教育家、工程师
和管理人员;三分之二以上的ACM成员,又是属于一个或多个SIGs(Special Interest Group)专
业组织成员。他们都对创造和应用信息技术有着极大的兴趣。有些最大的最领先的计算机企业和
信息工业也都是ACM的成员。
ACM就像一个伞状的组织,为其所有的成员提供信息,包括最新的尖端科学的发展,从理论思想到
应用的转换,提供交换信息的机会。正象ACM建立时的初衷,它仍一直保持着它的发展“信息技
术”的目标,ACM成为一个永久的更新最新信息领域的源泉。

ACM国际大学生程序设计竞赛(英文全称:ACM International Collegiate Programming Contest(ACM-ICPC或ICPC)是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。经过近30多年的发展,ACM国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。赛事目前由IBM公司赞助。

竞赛的历史可以上溯到1970年,当时在美国德克萨斯A&M大学举办了首届比赛。当时的主办方是the Alpha Chapter of the UPE Computer Science Honor Society。作为一种全新的发现和培养计算机科学顶尖学生的方式,竞赛很快得到美国和加拿大各大学的积极响应。1977年,在ACM计算机科学会议期间举办了首次总决赛,并演变成为目前的一年一届的多国参与的国际性比赛。迄今已经举办了29届。

最初几届比赛的参赛队伍主要来自美国和加拿大,后来逐渐发展成为一项世界范围内的竞赛。特别是自1997年IBM开始赞助赛事之后,赛事规模增长迅速。1997年,总共有来自560所大学的840支队伍参加比赛。而到了2004年,这一数字迅速增加到840所大学的4109支队伍并以每年10-20%的速度在增长。

1980年代,ACM将竞赛的总部设在位于美国德克萨斯州的贝勒大学。

在赛事的早期,冠军多为美国和加拿大的大学获得。而进入1990年代后期以来, 俄罗斯和其它一些东欧国家的大学连夺数次冠军。来自中国大陆的上海交通大学代表队则在2002年美国夏威夷的第26届和2005年上海的第29届全球总决赛上两夺冠军。这也是目前为止亚洲大学在该竞赛上取得的最好成绩。赛事的竞争格局已经由最初的北美大学一枝独秀演变成目前的亚欧对抗的局面。

ACM-ICPC以团队的形式代表各学校参赛,每队由3名队员组成。每位队员必须是在校学生,有一定的年龄限制,并且最多可以参加2次全球总决赛和5次区域选拔赛。

比赛期间,每队使用1台电脑需要在5个小时内使用C、C++、Pascal或Java中的一种编写程序解决7到10个问题。程序完成之后提交裁判运行,运行的结果会判定为正确或错误两种并及时通知参赛队。而且有趣的是每队在正确完成一题后,组织者将在其位置上升起一只代表该题颜色的气球。

最后的获胜者为正确解答题目最多且总用时最少的队伍。每道试题用时将从竞赛开始到试题解答被判定为正确为止,其间每一次提交运行结果被判错误的话将被加罚20分钟时间,未正确解答的试题不记时。例如:A、B两队都正确完成两道题目,其中A队提交这两题的时间分别是比赛开始后1:00和2:45,B队为1:20和2: 00,但B队有一题提交了2次。这样A队的总用时为1:00+2:45=3:45而B队为1:20+2:00+0:20=3:40,所以B队以总用时少而获胜。

与其它计算机程序竞赛(例如国际信息学奥林匹克,IOI)相比,ACM-ICPC的特点在于其题量大,每队需要5小时内完成8道题目,甚至更多。另外一支队伍3名队员却只有1台电脑,使得时间显得更为紧张。因此除了扎实的专业水平,良好的团队协作和心理素质同样是获胜的关键。

美国计算机协会(Association of Computing Machinery, 简称ACM)是一个世界性的计算机从业员专业组织,创立于1947年,是世界上第一个科学性及教育性计算机学会。ACM每年都出版大量计算机科学的专门期刊,并就每项专业设有兴趣小组。兴趣小组每年亦会在全世界(但主要在美国)举办世界性讲座及会谈,以供各会员分享他们的研究成果。近年ACM积极开拓网上学习的渠道,以供会员在工余或家中提升自己的专业技能

F. 求程序设计大赛题目

一、行棋游戏:
这是一种只有一个棋子的游戏。棋盘被分为N行,M列的方格,某个位置被标记为终点T。在任何一个位置,棋子可以向左、右、上、下四个方向移动一格,记移动距离为1。
在棋盘上有一些特殊方格——飞行器,每个飞行器有一个飞行距离d,棋子达到后可以继续在同方向再“飞”d格,且移动距离仍然为1。例如,如果棋子在位置(2,8),飞行器在位置(2,7),且飞行距离为5,那么棋子向左走一格,将直接到达位置(2,2)且移动距离为1。如果飞行点落在棋盘外,则只能停在边界上。例如,假若前个飞行器的飞行距离为10,那么棋子的最终位置是(2,1)。
而且,如果飞行后的落点仍然是飞行器,则将连续飞行到目的地,且中间点不对当前棋子产生影响,当然也不算任何移动距离。例如,如果棋子位置在(2,8),飞行器在(2,7)、(2,5),且飞行距离都是5,此时棋子向左移动一格,则(2,5)的飞行器将不产生作用,移动距离仍然为1。
你的任务就是,编程计算出棋子达到终点的最短移动距离。
输入:
输入可以有多个测试用例。每个测试用例的第一行是两个整数N、M(3<=N, M<=100),表示棋盘的行列数。随后是一个整数K,表示飞行器的个数。接着的K行每行有3个正整数x、y、d,分别表示飞行器的位置(x,y)(2 <= x <= N-1, 2 <= y <= M-1)及飞行距离d。最后的两行第一行是棋子的初始位置S,第二行是终点位置T。你可以假设数据总是合法的,S与T、飞行器位置互不相同。输入0 0时表示结束
输出:
每个测试用例输出一行,即达到终点的最短距离。如果不能达到,则输出“Impossible”。

二、最少钱币数:
(这个问题的输入我感觉特别麻烦,希望给出比较好的输入方法)
这是一个古老而又经典的问题。用给定的几种钱币凑成某个钱数,一般而言有多种方式。例如:给定了6种钱币面值为2、5、10、20、50、100,用来凑15元,可以用5个2元、1个5元,或者3个5元,或者1个5元、1个10元,等等。显然,最少需要2个钱币才能凑成15元。
你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。
输入:
输入可以有多个测试用例。每个测试用例的第一行是待凑的钱数值M(1 <= M <= 2000,整数),接着的一行中,第一个整数K(1 <= K <= 10)表示币种个数,随后是K个互不相同的钱币面值Ki(1 <= Ki <= 1000)。输入M=0时结束。
输出:
每个测试用例输出一行,即凑成钱数值M最少需要的钱币个数。如果凑钱失败,输出“Impossible”。你可以假设,每种待凑钱币的数量是无限多的。
样例输入:
15
6 2 5 10 20 50 100
1
1 2
0
样例输出:
2
Impossible 最佳答案第一题,典型的BFS找最短路

#include <iostream>
#define MAXN 105
using namespace std;
const int dir[4][2]={{0,1},{0,-1},{1,0},{-1,0}};
int m,n;
int map[MAXN][MAXN];
int head,tail;
int queue[MAXN*MAXN][3];
bool hash[MAXN][MAXN];
int tx,ty;

int main()
{
while (cin>>n>>m && n>0)
{
int i,j,k;
memset(map,0,sizeof(map));
cin>>k;
while (k--)
{
cin>>i>>j;
i--;
j--;
cin>>map[i][j];
}
memset(hash,true,sizeof(hash));
cin>>queue[0][0]>>queue[0][1];
queue[0][0]--;
queue[0][1]--;
queue[0][2]=0;
hash[queue[0][0]][queue[0][1]]=false;
head=0;
tail=1;
cin>>tx>>ty;
tx--;
ty--;
while (head<tail && hash[tx][ty])
{
for (k=0;k<4;k++)
{
i=queue[head][0]+dir[k][0];
j=queue[head][1]+dir[k][1];
while (i>=0 && i<n && j>=0 && j<m && map[i][j]>0)
{
i+=map[i][j]*dir[k][0];
j+=map[i][j]*dir[k][1];
if (i<0 || i>=n || j<0 || j>=m)
{
if (i<0) i=0;
if (i>=n) i=n-1;
if (j<0) j=0;
if (j>=m) j=m-1;
break;
}
}
if (i>=0 && i<n && j>=0 && j<m)
if (hash[i][j])
{
queue[tail][0]=i;
queue[tail][1]=j;
queue[tail][2]=queue[head][2]+1;
hash[i][j]=false;
if (i==tx && j==ty) cout<<queue[tail][2]<<endl;
tail++;
}
}
head++;
}
if (hash[tx][ty]) cout<<"impossible"<<endl;
}
return 0;
}

第二题是典型的DP
用f[i][j]表示用前i种币值凑出总额为j的钱所需的最少钱币个数
状态转移方程f[i][j]=min{f[i-1][j](i>0时),f[i][j-Ki]+1(j>=Ki时),无穷大};

#include <iostream>
#define MAXM 2010
#definme MAXK 15
using namespace std;
int m,k;
int K[MAXK];
int f[MAXK][MAXM];
int main()
{
while (cin>>m && m>0)
{
int i,j;
cin>>k;
for (i=1;i<=k;i++) cin>>K[i];
memset(f,-1,sizeof(f));
f[0][0]=0;
for (i=1;i<=k;i++)
for (j=0;j<=m;j++)
{
int min;
min=-1;
if (f[i-1][j]!=-1 && (min==-1 || f[i-1][j]<min)) min=f[i-1][j];
if (j>=K[i] && f[i][j-K[i]]!=-1 && (min==-1 || f[i][j-K[i]]+1<min)) min=f[i][j-K[i]]+1;
f[i][j]=min;
}
if (f[k][m]==-1) cout<<"impossible"<<endl;
else cout<<f[k][m]<<endl;
}
return 0;
}

G. 我想参加学校的程序设计的大赛,不知道写个什么题目。我们只学习了c语言,想请大家帮忙出一个题目

(看到这个题目是不是觉得难以相信呢?不要怀疑你的眼睛,没错,就是a+b)
已知两个数,a和b。求a+b

(提示注意a和b的范围)

输入数据格式:
输入的数据有多行。第一行是一个整数n,代表有n组数据。每组数据一行,其中包含两个数a和b。
(0<a<10^20,0<b<10^20)

输出数据格式:
对应每组的数据,输出a+b的结果,每个结果输出在一行中。

输入范例:
2
23 12
11 22

输出范例:
35
33

H. C语言 编程题目 程序设计题目 高中信息科技竞赛编程题目 【100分】

【第一道】
#include <iostream>
using namespace std;
#define pi 3.14159265
double maxvolume(double a,double b)
{
double v1,v2,r;
r=b/(2*pi+2);
v1=pi*r*r*a;
r=a/(2*pi+2);
v2=pi*r*r*b;
if(v1>v2)
return v1;
else
return v2;
}
int main()
{
double a,b;
cout<<"请输入矩形的长宽:";
cin>>a;
cin>>b;
cout<<"最大圆柱体积:"<<maxvolume(a,b)<<endl;
return 0;
}

【第二道】
//事实上,涂色方案不止样例上的一种,我把所有的可行方案都输出了一下
#include <iostream>
using namespace std;
int data[][8]={ {0},
{0,0,1,0,0,0,1,1},
{0,1,0,1,1,1,1,0},
{0,0,1,0,1,0,0,0},
{0,0,1,1,0,1,0,0},
{0,0,1,0,1,0,1,0},
{0,1,1,0,0,1,0,1},
{0,1,0,0,0,0,1,0}
};
int total;
int color[8];
char COLOR[5]={' ','R','Y','B','W'};
void output()
{
total++;
cout<<"["<<total<<"]\t";
for(int i=1;i<=7;i++)
{
cout.width(2);
cout<<COLOR[color[i]];
}
cout<<endl;
}
bool checkcolor(int s)
{
for(int i=1;i<=7;i++)
{
if(data[i][s]==1&&color[i]==color[s])
return false;
}
return true;
}
void drawcolor(int s)
{
if(s>7)
output();
else
for(int i=1;i<=4;i++)
{
color[s]=i;
if(checkcolor(s))
drawcolor(s+1);
}
}
int main()
{
cout<<" \t";
for(int i=1;i<=7;i++)
{
cout.width(2);
cout<<i;
}
cout<<endl;
drawcolor(1);
cout<<endl<<" \t涂色方案总数:"<<total<<endl<<endl;
return 0;
}

I. 比较好的大学生C语言竞赛编程题 或者比较有档次的竞赛有哪些(本科、研究生可以参加的)

1:C语言竞赛编程题很多,你可以去北大的ACM网上测评系统JudgeOnline上做题,它能检查你的代码是否正确。
网址:http://acm.pku.e.cn/JudgeOnline/
可以注册一个账号,它会保存你每次提交正确的代码,上面的题比较多,范围广,各种难度试题都有。当然还有其他大学的一些JudgeOnline,如上海交大的。

2:有档次的竞赛首推ACM/ICPC(国际大学生程序设计竞赛),当然也有全国大学生程序设计大赛。每年有的网站和机构也会举办编程竞赛,如这几年网络举办的网络之星程序设计大赛也很有影响力。在给出的样题第一例有对ACM的详细介绍,样题是我们学校某届程序大赛初试题,比较简单。(此外ACM程序大赛也可以用C++编程,本科生、研一可参加)

3:一些简单的ACM样题(因为是国际性比赛,ACM试题都是E文的,下面部分是翻译过来的)

H-acm规则
Description
ACM/ICPC(国际大学生程序设计竞赛)是由ACM(Association for Computing Machinery,美国计算机协会)组织的年度性竞赛,始于1976年,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事,是全世界公认的规模最大、规格最高的大学生程序设计竞赛,是参赛选手展示计算机才华的广阔舞台,是着名大学计算机教育成果的直接体现,是信息企业与世界顶尖计算机人才对话的最好机会。ACM/ICPC采用赛区选拔的方式产生参加世界决赛学校的资格,2001年,来自全球超过25个地区1141所大学的2362支队伍参加了第26届ACM/ICPC的赛区竞赛。在2002年3月,来自世界各地的约60支队伍,200多名选手参加了夏威夷总决赛的角逐。
在 ACM/ICPC 比赛中,均使用自动判题系统,这不仅减轻了ACM/ICPC比赛的举办方的负担,同时也使竞争更加的公正公平。 因为在比赛中,比赛成员就可以看到自己排名情况,这使的比赛更加的透明。
ACM/ICPC 比赛中排名是按如下方法排名的:
1: 解题数目最多的队伍排在前面。
2: 如果解题数目相等的队伍,总用时最少的排在前面。
注: 在比赛中,每道试题用时将从竞赛开始到试题解答被判定为正确为止,期间每一次错误的运行将被加罚20分钟时间,未正确解答的试题不计时。 那么所有解答出来题目的用时和罚时加起来为:该队伍所花的总用时。
现在,需要你写一个程序来给比赛队伍进行排名(假设不超过200支队伍)。
Input
多行测试数据,每行包含各个队伍的比赛信息。
每个队伍格比赛信息表示格式为:
string n m 分别表示队名、解题数量、总用时(其中:队名为长度不超过30的字符串,解题数量为1…10之间的整数,罚时的范围不超过int的范围)
当输入end时,表示输入结束。
Output
按先后名次输出各个队伍的比赛信息。
每个比赛队伍占一行。
每行格式为:
string n m 分别代表 队名 解题数量 总用时。
Example Input
amstl 3 65
danoniao 2 50
lutedan 3 60
end
Example Output
lutedan 3 60
amstl 3 65
danoniao 2 50

G-我想我需要一只船屋
Description
佛瑞德最近正在考虑在路易斯安那洲买一片土地来盖一栋房子.在进行调查研究土地的过程中佛瑞德发现,路易斯安那洲的土地由于密西西比河的侵蚀会以每年50平方英里的速度缩减.佛瑞德计划后半生都在该地度过,所以他不希望在自己的有生之年房屋受到河水的侵蚀.现在他需要知道自己是否会受到河水的侵蚀.
在做了更多的调查之后,佛瑞德得知这里的土地沿河岸以半圆形方式侵蚀,这个半圆以(0,0)为圆心的,被X轴分成上下两部分,位于X轴下边的是河水,上面是河岸.在第一年开始的时候这个半圆范围为0,也就是说河岸未被河水侵蚀.(半圆如下图所示)

Input
第一行的一个正整数N指出下边有多少组数据需要计算.下边N行,每行包含两个实数X和Y,指出佛瑞德考虑的房子以(0,0)为原点的坐标系内的位置.以英里为单位.Y为非负数.
Output
计算在X,Y位置佛瑞德的房子在第几年会被河水侵蚀.与输入数据相对应每行以如下形式输出你的计算结果:“Property N: This property will begin eroding in year Z.”, 其中N为第N组数据,Z为你计算出的开始侵蚀的年数.在最后输出一句“END OF OUTPUT.”,表示计算结束.
Example Input
2
1.0 1.0
25.0 0.0
Example Output
Property 1: This property will begin eroding in year 1.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT.
Hint
• 房屋的位置不会正好在半圆边界上,要不在内,要不在外。
• 你所提交的程序计算输出会由系统自动判断。你的结果要和输出要求精确匹配,字母大小写、标点符号和空格 。包括最后一行的语句也要精确匹配。
• 所有给定数据都以英里为单位。

F-N!的计算
Description
N!=N×(N-1)×(N-2)×(N-3)×....
Input
输入第一行为一正整数m,表示下边要计算几个 N!
下一行开始为m个正整数( 1 ≤ N ≤ 11 , m ≤ 9)
Output
输出这m个正整数的阶乘结果,每个一行.
Example Input
3
1
2
5
Example Output
1
2
120

I-Vertical Histogram
Description
Write a program to read four lines of upper case (i.e., all CAPITAL LETTERS) text input (no more than 72 characters per line) from the input file and print a vertical histogram that shows how many times each letter (but not blanks, digits, or punctuation) appears in the all-upper-case input. Format your output exactly as shown.
Input
* Lines 1..4: Four lines of upper case text, no more than 72 characters per line.
Output
* Lines 1..??: Several lines with asterisks and spaces followed by one line with the upper-case alphabet separated by spaces. Do not print unneeded blanks at the end of any line. Do not print any leading blank lines.
Example Input
THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.
THIS IS AN EXAMPLE TO TEST FOR YOUR
HISTOGRAM PROGRAM.
HELLO!
Example Output
*
*
* *
* * * *
* * * *
* * * * * *
* * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * *
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

J-白棋胜?还是黑棋胜?
Description
Cinderalla最近迷上了玩五子棋.可是在和其它的小伙伴一起玩时她老是输,于是她想用计算机来帮她判断棋局是那方获胜.为了简便,我们先去掉一些规则.我们认为棋盘上只要有一方的棋有五个棋子相连就确定那一方获胜.你的任务是编写一个程序来判断我们给出的棋局是那一方获胜.
Input
输入数据只有一组.第一行有两个正整数m,n(5 ≤ m,n ≤ 10),分别代表棋盘的行数和列数.紧接着的2*n+1行是棋盘的描述,棋盘由"+","-","|"构成,其中"*"代表白棋,"#"代表黑棋. "+","-","|"的ASCII码分别为43、45、124
Output
输出数据只有一组,如果白棋获胜则输出White Win!,如果黑棋获胜则输出Black Win!
Example Input
5 10
+-+-+-+-+-+-+-+-+-+-+
| |*| | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+
| | |*|#| | | | | | |
+-+-+-+-+-+-+-+-+-+-+
| | |#|*|#|#| | | | |
+-+-+-+-+-+-+-+-+-+-+
| | | | |*|#| | | | |
+-+-+-+-+-+-+-+-+-+-+
| | | | | |*| | | | |
+-+-+-+-+-+-+-+-+-+-+
Example Output
White Win!
Hint
给出的棋局必有一方是获胜的.

J. 大学生参加编程竞赛,各种竞赛用的语言都一样的吗用的是什么语言

各种语言都行啊,只要不是特定的某种语言竞赛;比如,C/C++语言竞赛;
一般的计算机编程竞赛都是给题目,你只要能答上就行.

热点内容
python静态类方法 发布:2024-04-30 01:30:28 浏览:461
zblogphpasp 发布:2024-04-30 01:27:35 浏览:136
宏程序自动编程软件 发布:2024-04-30 01:15:01 浏览:416
vs添加编译选项 发布:2024-04-30 01:06:10 浏览:613
编程红码 发布:2024-04-30 01:04:49 浏览:910
给数组赋值java 发布:2024-04-30 01:04:37 浏览:498
我的世界jave版如何开服务器 发布:2024-04-30 01:02:34 浏览:901
safari清除缓存ipad 发布:2024-04-30 00:47:24 浏览:523
字段级数据加密 发布:2024-04-30 00:34:59 浏览:73
编译原理上机实验构建预测分析器 发布:2024-04-30 00:05:47 浏览:571