30979 goc编程题 冰壶场地

题目描述

北京冬奥会的比赛项目精彩纷呈,小明特别爱看冰壶比赛,听电视台叔叔介绍,冰壶运动被喻为冰上的“国际象棋”,它考验参与者的体能与脑力,展现动静之美,取舍之智慧。他非常向往这项运动中,于是他利用GoC编程绘制了冰壶运动场。如下图:

image.png

图形数据:

  • 最外层矩形:宽600,高140,红色(代码为1);

  • 左右对称两个为营垒,圆心相距450;

  • 两边营垒以中心点为圆心,分别有半径为40,30,22,10的同心圆圈,颜色分别是蓝色(代码为2),白色(代码为15),红色(代码为1),白色(代码为15)。

这里模拟简单的一轮冰壶比赛,给出A队和B队的一次投壶结果,A队的球距离目标中心长度 和 B队的球距离目标中心长度,得分规则:

  • 1)如果双方球都距离中心位置>60,都不得分;

  • 2)如果一方球距离中心位置>60,另一方距离中心位置<=60,另一方得分1;

  • 3)如果双方球都距离中心位置<=60,距离中心近的一方得分1;距离相同则都不得分。

输出:

如果A队得分超过B队得分,在中心位置用text(1,0,50)命令输出1;

如果B队得分超过A队得分,在中心位置用text(2,0,50)命令输出2;

如果A队得分等于B队得分,在中心位置用text(0,0,50)命令输出0;

(字为黑色,大小50)

例如,收入的两个数是15 12 , 结果为:

image.png

输入/输出例子1

输入:

30 30

输出:

image.png

题解

int main(){
    p.hide();
    p.r(600,140,1);
    p.rt(90).up().bk(450/2);
    p.oo(40,2).oo(30,15).oo(22,1).oo(10,15);
    p.fd(450);
    p.oo(40,2).oo(30,15).oo(22,1).oo(10,15); 
    p.bk(450/2);   
    int a,b,x,y;
    cin >> a >>b;
    if (a<b) x=1;
    if (b<a) y=1;
    if (a==b) {x=0; y=0; }
    if (a>60) x=0;
    if (b>60) y=0;
    int ans;
    if (x>y) ans=1;
    else if (x<y) ans=2;
    else ans=0;
    p.text(ans,0,50);
    return 0;
}