HDU-1225 Football Score 模拟问题(水题)
题目链接:https://cn.vjudge.net/problem/HDU-1225
水题
代码
#include <algorithm>
#include <string>
#include <cstdio>
#include <map>
using namespace std;
struct Team{
int score[3];
string name;
Team(string name="", int s1=0, int s2=0, int s3=0):name(name) {
score[0]=s1; score[1]=s2; score[2]=s3;
}
bool operator < (const Team &a) const{
if (score[0]!=a.score[0]) return score[0]>a.score[0];
if (score[1]!=a.score[1]) return score[1]>a.score[1];
if (score[2]!=a.score[2]) return score[2]>a.score[2];
return name<a.name;
}
}arr[1000+5];
int main(void){
int n;
while (scanf("%d", &n)==1 && n){
map<string, int> getidx;
int size=0, end=n*(n-1), scores[2][3], s[2];
char teamname[2][1000];
for (int i=0; i<end; i++){
scanf("%s%*s%s%d:%d", teamname[0], teamname[1], &s[0], &s[1]);
if (s[0]==s[1]) scores[0][0]=scores[1][0]=1;
else if (s[0]>s[1]) scores[0][0]=3, scores[1][0]=0;
else scores[0][0]=0, scores[1][0]=3;
scores[0][1]=s[0]-s[1]; scores[0][2]=s[0];
scores[1][1]=s[1]-s[0]; scores[1][2]=s[1];
for (int i=0; i<2; i++){
if (!getidx.count(teamname[i])){
getidx[teamname[i]]=size++;
arr[getidx[teamname[i]]]=Team(teamname[i], scores[i][0], scores[i][1], scores[i][2]);
}else for (int j=0; j<3; j++)
arr[getidx[teamname[i]]].score[j]+=scores[i][j];
}
}
sort(arr, arr+size);
for (int i=0; i<size; i++)
printf("%s %d\n", arr[i].name.c_str(), arr[i].score[0]);
printf("\n");
}
return 0;
}
HDU-1225 Football Score 模拟问题(水题)的更多相关文章
- HDU 2096 小明A+B --- 水题
HDU 2096 /* HDU 2096 小明A+B --- 水题 */ #include <cstdio> int main() { #ifdef _LOCAL freopen(&quo ...
- hdu 2117:Just a Numble(水题,模拟除法运算)
Just a Numble Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- [HDU 2602]Bone Collector ( 0-1背包水题 )
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602 水题啊水题 还给我WA了好多次 因为我在j<w[i]的时候状态没有下传.. #includ ...
- hdu 2050:折线分割平面(水题,递归)
折线分割平面 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- hdu 2044:一只小蜜蜂...(水题,斐波那契数列)
一只小蜜蜂... Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Submission(s): Accepte ...
- HDU 4706 Children's Day (水题)
Children's Day Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- hdu 1201:18岁生日(水题,闰年)
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- hdu 2025:查找最大元素(水题,顺序查找)
查找最大元素 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- HDU 6300.Triangle Partition-三角形-水题 (2018 Multi-University Training Contest 1 1003)
6300.Triangle Partition 这个题就是输出组成三角形的点的下标. 因为任意三点不共线,所以任意三点就可以组成三角形,直接排个序然后输出就可以了. 讲道理,没看懂官方题解说的啥... ...
随机推荐
- Mysql实战45讲 04讲深入浅出索引(上)读书笔记 极客时间
极客时间 Mysql实战45讲 04讲深入浅出索引 极客时间(上)读书笔记 笔记体悟 1.索引的作用:提高数据查询效率2.常见索引模型:哈希表.有序数组.搜索树3.哈希表:键 - 值(key - v ...
- MyLayer MyScene
//MyLayer.h #include "cocos2d.h" USING_NS_CC; class MyLayer : public CCLayer { public: sta ...
- (转载)所有分类 > 开发语言与工具 > 移动开发 > Android开发 Android中的Service:默默的奉献者 (1)
前言 这段时间在看一些IPC相关的东西,这里面就不可避免的要涉及到service,进程线程这些知识点,而且在研究的过程中我惊觉自己对这些东西的记忆已经开始有些模糊了——这可要不得.于是我就干脆花了点心 ...
- 理解ZBrush中的笔触
笔触主要配合笔刷来使用,同样的笔刷搭配不同的笔触可以绘制出各种不同的效果.简言之,ZBrush 4R8就是提供了各种各样的笔触效果,例如,有模拟连贯笔触的效果,也有模拟喷枪喷洒的笔触效果. 下面简单认 ...
- FCC编程题之中级算法篇(中)
介绍 接着上次的中级算法题 目录 1. Missing letters 2. Boo who 3. Sorted Union 4. Convert HTML Entities 5. Spinal Ta ...
- yii2.0 发送邮件带word小附件
把 common/config/main-local.php 下的 mailer 注释掉: 'mailer'=>[ 'class ...
- redis数据库服务器开启的三种方式
redis的启动方式1.直接启动 进入redis根目录,执行命令: #加上‘&’号使redis以后台程序方式运行 1 ./redis-server & 2.通过指定配置文件启动 ...
- win10安装node/yarn报错2503/2502
当我们从node官网下载windows安装包时会得到一个msi文件,由于win10的安全策略比较严格,所以我们在右键菜单上找不到以管理员运行这个按钮: 普通的exe文件: msi文件: 解决办法: 此 ...
- HDU Integer's Power(容斥原理)
题意 求[l,r]的最大指数和(1<=l,r<=10^18) 最大指数和(如64=8^2=4^3=2^6,所以64的最大指数和是6) 题解 很明显我们可以先求出[1,n]的最大指数和,然后 ...
- 批量删除harbor中的镜像
一 说明 这个是我第一篇博客,所以我想放上原创的东西,尽管我一直都很担心自己写得太low,但是总要学会尝试,学会改变自己,相信自己.在写这个脚本时,由于我接触LInux不是很多,能力有限,仅仅是为了让 ...