注意代码中:

  result1 << " to " << result2 << ", PLAYER 1 WINS."<< endl;

  result1 << " to " << result2 << ", PLAYER 1 WINS. "<< endl;

虽然只在WINS后只差一个空格,但会导致PE。

原题:

2101.   Bullseye


Time Limit: 1.0 Seconds   Memory Limit: 65536K
Total Runs: 3848   Accepted Runs: 1306

Problem

A simple dartboard consists of a flat, circular piece of cork with concentric
rings drawn on it. Darts are thrown at the board by players in an attempt to hit
the center of the dartboard (the Bullseye). The region between each pair
of rings (or the center and the first ring) represents a certain point value.
The closer the region is to the center of the dartboard, the more points the
region is worth, as shown in the diagram below:

Ring radii are at 3", 6", 9", 12" and 15" (the Bullseye has a diameter
of 6"). A game of Simple Darts between two players is played as follows.
The first player throws 3 darts at the board. A score is computed by adding up
the point values of each region that a dart lands in. The darts are removed. The
second player throws 3 darts at the board; the score for player two is computed
the same way as it is for player one. The player with the higher score wins.

For this problem, you are to write a program that computes the scores for two
players, and determine who, if anyone, wins the game. If a dart lands exactly on
a ring (region boundary), the higher point value is awarded. Any dart outside
the outer ring receives no points. For the purposes of this problem, you can
assume that a dart has an infinitely fine point and can not land
partially on a ring; it is either on the ring or it is not
on
the ring. Standard double precision floating point operations will be
should be used.

Input

Input consists of 1 or more datasets. A dataset is a line with 12
double-precision values separated by spaces. Each pair of values represents the
X and Y distances respectively of a dart from the center of the board in inches.
(the center is located at X=0, Y=0. The range of values are: -20.0
X,Y ≤ 20.0. Player one's darts are represented by the first 3
pairs of values, and player two's by the last 3 pairs of values. Input is
terminated by the first value of a dataset being -100.

Output

For each dataset, print a line of the form:

SCORE: N to M, PLAYER P WINS.

Or:

SCORE: N to M, TIE.

N is player one's score, and M is player two's score. P is either 1 or 2 depending on which player wins. All values are non-negative integers.

Formula

Recall: r2 = x2 + y2 where r is the radius, and (x, y) are the coordinates of a point on the circle.

Sample Input

-9 0 0 -4.5 -2 2 9 0 0 4.5 2 -2
-19.0 19.0 0 0 0 0 3 3 6 6 12 12
-100 0 0 0 0 0 0 0 0 0 0 0

Sample Output

SCORE: 240 to 240, TIE.
SCORE: 200 to 140, PLAYER 1 WINS.

Source: Greater New York
2004

源代码:

 #include <iostream>
#include <string.h>
const int maxn = ;
using namespace std; double score[maxn]; int sCount (double i, double j) {
double temp = i*i + j*j;
if (temp <= ) return ;
else if (temp <= && temp > ) return ;
else if (temp <= && temp > ) return ;
else if (temp <= && temp > ) return ;
else if (temp <= && temp > ) return ;
else return ;
}
int main()
{
memset(score, , sizeof(score));
while (cin >> score[] && score[] != -) {
for (int i = ; i < ; i++) {
cin >> score[i];
}
int result1 = , result2 = ;
result1 += sCount(score[], score[]) + sCount(score[], score[])
+ sCount(score[], score[]);
result2 += sCount(score[], score[]) + sCount(score[], score[])
+ sCount(score[],score[]);
if (result1 > result2) cout << "SCORE: "<<
result1 << " to " << result2 << ", PLAYER 1 WINS."<< endl;
else if (result2 > result1) cout << "SCORE: "<<
result1 << " to " << result2 << ", PLAYER 2 WINS."<< endl;
else cout << "SCORE: "<< result1 << " to " << result2 << ", TIE." << endl;
}
return ;
}

TJU Problem 2101 Bullseye的更多相关文章

  1. TJU Problem 2548 Celebrity jeopardy

    下次不要被长题目吓到,其实不一定难. 先看输入输出,再揣测题意. 原文: 2548.   Celebrity jeopardy Time Limit: 1.0 Seconds   Memory Lim ...

  2. TJU Problem 2857 Digit Sorting

    原题: 2857.   Digit Sorting Time Limit: 1.0 Seconds   Memory Limit: 65536KTotal Runs: 3234   Accepted ...

  3. TJU Problem 1015 Gridland

    最重要的是找规律. 下面是引用 http://blog.sina.com.cn/s/blog_4dc813b20100snyv.html 的讲解: 做这题时,千万不要被那个图给吓着了,其实这题就是道简 ...

  4. TJU Problem 1065 Factorial

    注意数据范围,十位数以上就可以考虑long long 了,断点调试也十分重要. 原题: 1065.   Factorial Time Limit: 1.0 Seconds   Memory Limit ...

  5. TJU Problem 1100 Pi

    注: 1. 对于double计算,一定要小心,必要时把与double计算相关的所有都变成double型. 2. for (int i = 0; i < N; i++)         //N 不 ...

  6. TJU Problem 2520 Quicksum

    注意: for (int i = 1; i <= aaa.length(); i++) 其中是“ i <= ",注意等号. 原题: 2520.   Quicksum Time L ...

  7. TJU Problem 1090 City hall

    注:对于每一横行的数据读取,一定小心不要用int型,而应该是char型或string型. 原题: 1090.   City hall Time Limit: 1.0 Seconds   Memory ...

  8. TJU Problem 1644 Reverse Text

    注意: int N; cin >> N; cin.ignore(); 同于 int N; scanf("%d\n",&N); 另:关于 cin 与 scanf: ...

  9. 2101 Problem A Snake Filled

    题目描述 “What a boring world!”Julyed felt so bored that she began to write numbers on the coordinate pa ...

随机推荐

  1. Django之缓存

    由于Django构建得是动态网站,每次客户端请求都要严重依赖数据库,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中, ...

  2. ConcurrentHashMap1.8源码解析

    深入并发包 ConcurrentHashMap 概述 JDK1.8的实现已经摒弃了Segment的概念,而是直接用Node数组+链表+红黑树的数据结构来实现,并发控制使用Synchronized和CA ...

  3. FileZilla Server隐藏版本号教程

    1.查看当前是否泄漏版本号 telnet FileZilla监听端口查看返回信息:telnet 192.168.220.130 21 2.自定义欢迎信息 登录FileZilla--点击“Edit”-- ...

  4. python 怎样使用单个反斜杠\

    path2 = "c:\\windows\\temp\\readme.txt" path2:用一个"\"取消第二个"\"的特殊转义作用,即为 ...

  5. cmp的值到底是0还是1还是-1的问题

    返回值不局限于这三个数返回负数,表示第一个参数小于第二个参数返回整数,表示第一个参数大于第二个参数返回0,表示他们相等

  6. MySQL(二) MySQL基本操作

    数据库的基本操作 启动关闭 MySQL 服务 MySQL 安装好后,默认是当 Windows 启动.停止时,MySQL 也自动.停止.不过,用户可以使用 Windows 下的服务管理器或从命令行使用 ...

  7. Java Web(九) JDBC及数据库连接池及DBCP,c3p0,dbutils的使用

    DBCP.C3P0.DBUtils的jar包和配置文件(百度云盘):点我下载 JDBC JDBC(Java 数据库连接,Java Database Connectify)是标准的Java访问数据库的A ...

  8. 逆袭之旅DAY14.东软实训.Oracle.多表连接、分组函数、子查询

    2018-07-10 08:29:55 思考应用场景 异常数据的测试 6.显示能挣得奖金的雇员的姓名.工资.奖金,并以工资和奖金降序排列.select ename,sal,commfrom empWH ...

  9. java将字符串根据空格进行分割,使用split方法

    public class D { public static void main(String[] args) { String b = "Hello Java World"; S ...

  10. WPF 之 TreeView节点重命名

    下面的TreeView节点是通过数据双向绑定的方式,绑定到TextBlock控件和TextBox控件的Text属性上,并且让两者绑定相同的属性,同时使TextBox控件刚好完全覆盖TextBlock控 ...