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 这个题就是输出组成三角形的点的下标. 因为任意三点不共线,所以任意三点就可以组成三角形,直接排个序然后输出就可以了. 讲道理,没看懂官方题解说的啥... ...
随机推荐
- 17.广度优先遍历bfs
#include <iostream> #include <boost/config.hpp> //图(矩阵实现) #include <boost/graph/adjac ...
- jqGrid的editrules参数
原文链接:http://blog.csdn.net/mengtianyalll/article/details/13502841 editrules editrules是用来设置一些可用于可编辑 ...
- LeetCode 1. Two Sum (c++ stl map)
题目:https://leetcode.com/problems/two-sum/description/ stl map代码: class Solution { public: vector< ...
- python内置的一些模块
logging模块: 默认情况下,logging将日志打印到屏幕,日志级别为WARNING:日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO & ...
- linux上测试磁盘IO速度
运维工作,经常要测试服务器硬件性能,以此来判断是否存在性能瓶颈. 下面介绍在linux上测试磁盘IO速度的工具: 1.hdparm CentOS中,安装的两种方法: 1) yum安装. # yum i ...
- c++类模板初探
#include <iostream> #include <string> using namespace std; // 你提交的代码将嵌入到这里 ; template &l ...
- servlet关于转发用法
# 1.转发 ## (1)什么是转发? 一个web组件将未完成的处理交给另外一个web组件继续做. 注: web组件(servlet/jsp) 最常见的情况: ...
- idea运行提示Error:java:无效的源发行版:1.9
如果你是jdk1.8 改到8即可,如图:
- (一)React再学习
新公司的技术栈是React,虽然之前对react大概过了一遍,但是自己没有实际落地过项目 再学习一遍react: 一.react全家桶 ·create-react-app ·组件化思维 ·JSX ·开 ...
- iOS面试总结(待完善)
闲的没事总结一下面试资料,先列个大纲,然后慢慢填充,一步步完善,反正也不急. 1.基本属性 2.KVC与KVO 3.代理与block 4.多线程:NSThread,GCD,NSOperation 5. ...