问题描述
某国正在以投票的方式决定 2 名死刑犯(编号 1∼2)的生死。
共有 n 组人员(编号 1∼n)参与投票,每组 10 人。
每组成员只参与一名死刑犯的投票,其中第 i 组人员的投票对象是死刑犯 ti,其中 xi 人认为他无罪,yi 人认为他有罪。
在所有人员投票结束后,将对投票结果进行统计。
对于每名死刑犯,如果投他无罪的总票数大于或等于投他有罪的总票数,则他得以生还,否则他将被处死。
请你判断每名死刑犯的生死。
格式输入
第一行包含一个整数 n。
接下来 n 行,每行包含三个整数 ti,xi,yi。
保证两名犯人都会被投票。
格式输出
如果第一位死刑犯生还,则在第一行输出 LIVE,否则在第一行输出 DEAD。
如果第二位死刑犯生还,则在第二行输出 LIVE,否则在第二行输出 DEAD。
样例输入
2
1 5 5
2 6 4
样例输出
LIVE
LIVE
评测用例规模与约定
前 3 个测试点满足 2≤n≤10。
所有测试点满足 2≤n≤1000,1≤ti≤2,0≤xi,yi≤10, xi+yi=10
解析
用模拟法解决即可,两个数组记录认为有罪和无罪票数,最后判断输出
参考程序
#include<iostream>
using namespace std;
int n;
int a[2],b[2];
int main()
{
cin>>n;
while(n--){
int t,x,y;
cin>>t>>x>>y;
t--;
a[t]+=x;b[t]+=y;
}
for(int i=0;i<2;i++)
if(a[i]>=b[i])
puts("LIVE");
else puts("DEAD");
return 0;
}
——来自Acwing85周周赛,如有侵权,联系请删。