Ten big walnuts is a whole lot of walnuts, that's for sure! Two walnuts is too little for anybody. How about six walnuts? Is it a small number of walnuts or a large one? The Parrot has already found
an answer to this question: after eating a small amount of walnuts he wants to eat some more, while after eating a large amount of walnuts he feels satisfied. The Parrot enjoys eating and hates overeating; that's why he wants to know a minimal number of walnuts
that is enough to get satisfied.
In order to calculate this number, he conducted a series of experiments. Each experiment went like that: the Parrot, being quite hungry, ate a number of walnuts and checked if this was enough to get
himself satisfied. Of course, if some number of walnuts is enough, any larger number will do either; vice versa, if after eating a number of walnuts he is still hungry, no smaller number can get the parrot satisfied. You should help the Parrot to process the
results of the experiments.
Input
The first line of the input contains an integern— the number of experiments conducted by the parrot<nobr>(0 ≤<em>n</em>≤ 100)</nobr>. The followingnlines contain descriptions
of these experiments. A description of an experiment consists of a number of walnuts eaten by the parrot (an integer from 3 to 9) and an outcome: “satisfied” in case this number was enough to get the parrot satisfied or “hungry” otherwise. It is known as a
fact, that ten walnuts is always enough and two walnuts are always not enough.
Output
Output the minimal number of walnuts that is enough to get the parrot satisfied. If the results of the experiments are inconsistent, output “Inconsistent”.
Samples
input
output
4
4 hungry
7 satisfied
5 hungry
8 satisfied
|
7
|
2
6 hungry
5 satisfied
|
Inconsistent
|
本题很容易,不过有两个陷阱:
1 当数字相等的时候,可能出现satisfied和 hungry的情况,就是Inconsistent了
2 要认真读题意:It is known as a fact, that ten walnuts is always enough and two walnuts are always not enough.
有两种解法:
1
namespace
{
static const int MAX_WALNUTS = 10;
}
void AWholeLotofWalnuts1644()
{
int n = 0, a = 0;
string s;
cin>>n;
string walnuts[MAX_WALNUTS];
for (int i = 0; i < n; i++)
{
cin>>a>>s;
if (walnuts[a].size())
{
if (walnuts[a] != s)
{
cout<<"Inconsistent";
return;
}
}
walnuts[a] = s;
}
int ans = -1;
for (int i = 0; i < MAX_WALNUTS; i++)
{
if (walnuts[i] == "satisfied" && -1 == ans)
{
ans = i;
}
if (walnuts[i] == "hungry" && -1 != ans)
{
cout<<"Inconsistent";
return;
}
}
if (-1 == ans) cout<<10;//It is known as a fact, that ten walnuts is always enough and two walnuts are always not enough.少了这句就答案错误了
else cout<<ans;
}
2 更加简洁点:
void AWholeLotofWalnuts1644_2()
{
int n = 0, a = 0;
string s;
cin>>n;
int min_sat = MAX_WALNUTS;
int max_hun = -1;
for (int i = 0; i < n; i++)
{
cin>>a>>s;
if ('h' == s[0]) max_hun = max_hun < a? a : max_hun;
else if ('s' == s[0]) min_sat = min_sat > a? a : min_sat;
}
if (max_hun >= min_sat) cout<<"Inconsistent";
else cout<<min_sat;
}
分享到:
相关推荐
acm.timus.ru最全代码
Timus ... Problems code. (Mainly Java implementation) Chinese 刷题代码,主要是java实现,可能会有其他语言代码 代码来自LeetCode / NowCoder / timus 等 site url LeetCode NowCoder Timus LeetCode-cn
acm.timus.ru解决方案 这些是我对ACM.TIMUS.RU问题的解决方案
In the present world you frequently meet a lot of call numbers and they are going to be longer and longer. You need to remember such a kind of numbers. One method to do it in an easy way is to assign ...
timus.ru_solutions 使用的语言:Python 使用的Python版本:3.9 我可以用Python语言解决的一些问题在“ python”目录中。 有些解决方案可以在Java中运行,但确切的解决方案/算法在Python中不起作用! 不知道为什么我...
timus.ru_solutions_python 使用的python:3.9 我可以用Python语言解决的一些问题在python目录中。 有些解决方案可以在Java中运行,但确切的解决方案/算法在Python中不起作用! 我不知道为什么
acm.timus.ru 1709 problem
资源分类:Python库 所属语言:Python 资源全名:timus-sender-0.1.1.post1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
Timus上习题解答与代码参考,这一部分对应于Timus上的Beginner部分的习题
https://acm.timus.ru/problem.aspx?space=1&num=1119 题目答案
timus:Timus在线法官问题
将图表添加到Timus Online Judge配置文件 该扩展程序将已解决问题的数量图表添加到Timus Online Judge的个人资料和比较器中。 功能:*概要文件和比较中已解决问题计数的图表*向图表中添加更多用户,删除它们,自定义...
timus OJ 1197 lonesome kinght
Timus图表 将图表添加到Timus Online Judge个人资料中 特征 概要文件中和比较期间已解决问题的计数图表 向图表添加更多用户,删除它们,自定义图例颜色 缓存配置文件数据 隐藏图表 (可选)突出显示最近两个月内接受...
蒂莫斯 该文件夹包含用Python编写的文件(主要是Python2.7,有些是Python3.4)我通过这些文件在timus上通过了相应的测试。
http://acm.timus.ru 俄罗斯乌拉尔大学在线题库 SGU http://acm.sgu.ru/ 俄罗斯圣萨拉托夫州大学在线题库 ELJ http://acm.mipt.ru/judge/bin/problems.pl?lang=en file:///M|/acm/ACM大量习题题库及建议培养计划.txt...
http://acm.timus.ru/problem.aspx?space=1&num=1362 一道树形动态规划的题目解答,ural1362
timus-online-judge Timus Online Judge 是俄罗斯最大的带有自动评判系统的编程问题档案。 问题主要是从在乌拉尔联邦大学、乌拉尔锦标赛、乌拉尔 ACM ICPC 次区域比赛和彼得罗扎沃茨克训练营举办的比赛中收集的。 ...
语言:English将图表添加到Timus Online Judge个人资料中该扩展程序将已解决问题的数量图表添加到Timus Online Judge的个人资料和比较器中。功能:*概要文件和比较中已解决问题计数的图表*向图表中添加更多用户,删除...
1. 介绍了一些著名的综合性OJ网站,如UVa、POJ、Timus、SGU等,题目数量大、种类全面。 2. 推荐了针对新手入门的OJ网站,如HDU、ZJU等,收集了不少水题,适合新手起步训练。 3. 介绍了一些以赛事见长的OJ网站,如...