Lightoj1241——Pinocchio (模拟+ceil)
来源:互联网 发布:centos安装deb 编辑:程序博客网 时间:2024/04/30 14:32
You must have heard the name of Pinocchio. If you never heard of him, don’t panic, I am here to help you. But why I am introducing you to Pinocchio? Cause there is an interesting (and also quite strange) fact about him.
Pinocchio is a boy who lives in a certain village. He is a little boy, who is prone to telling lies, fabricating stories and exaggerating or creating tall tales for various reasons. But the strange fact is, when he does this, his nose gets longer. But when he tells the truth his nose gets back to normal size which is 2 cm.
Usually, when he wakes up in the morning his nose gets back to normal size. When he tells a lie, his nose grows at least 1 cm and at most 5 cm.
Pinocchio Pinocchio after some lies
There is a common paradox related to him. What if he says, “My nose grows now.” You may wonder why the simple looking statement leads to a paradox. The result of this deadly statement is noted below:
Assume that this sentence is true
Which means that Pinocchio’s nose grows now because he truthfully says it is, but then
Pinocchio’s nose does not grow now because it grows only as Pinocchio lies, but then
Pinocchio’s nose grows now because Pinocchio’s nose does not grow now, and Pinocchio trustfully says it grows now, and it is false, that makes Pinocchio’s sentence to be false, but then
Pinocchio’s nose does not grow now because Pinocchio’s nose grows now, and Pinocchio trustfully says it grows now, and it is true that makes Pinocchio’s sentence to be true, but then
And so on ad infinitum.
Now assume that the sentence is false
Which means that Pinocchio’s nose does not grow now because he falsely says it is, but then
Pinocchio’s nose grows now because it grows only as Pinocchio lies, but then
Pinocchio’s nose does not grow now because Pinocchio’s nose grows now, and Pinocchio falsely says it grows now, and it is false that makes Pinocchio’s sentence to be true, but then
Pinocchio’s nose grows now because Pinocchio’s nose does not grow now, and Pinocchio falsely says it grows now, and it is true, that makes Pinocchio’s sentence to be false, but then
And so on ad infinitum.
Now you are given some sizes of his nose in a day. Assume that he hasn’t told any truth in that day and the sizes are reported in increasing order of time. You have to find the minimum number of lies he has told in that day such that the report of the sizes is true.
Input
Input starts with an integer T (≤ 100), denoting the number of test cases.
Each case starts with a line containing an integer n (1 ≤ n ≤ 10), where n denotes the total number of reports of his nose in a certain day. The next line contains n space separated integers denoting the sizes of his nose in that day. If the integers in that line is a1, a2 … an, you can assume that
(2 ≤ a1 ≤ a2 ≤ … ≤ an ≤ 50)
Output
For each case, print the case number and the minimum number of lies Pinocchio has told in that day. See the samples for the output format.
Sample Input
2
5
2 3 3 3 4
4
2 3 4 5
Output for Sample Input
Case 1: 2
Case 2: 3
匹诺曹的鼻子每次增长1~5cm,给出一天的长度,求最少撒谎次数
别的没什么,主要是ceil只对double类型管用
#include <iostream>#include <cstring>#include <string>#include <vector>#include <queue>#include <cstdio>#include <set>#include <cmath>#include <algorithm>#define INF 0x3f3f3f3f#define MAXN 2005#define Mod 10001using namespace std;double a[20];int main(){ int t,cnt=1; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); for(int i=0;i<n;++i) scanf("%lf",&a[i]); int ans=0; for(int i=1;i<n;++i) { ans+=ceil((a[i]-a[i-1])/5); } if(a[0]>2) ans+=ceil((a[0]-2)/5); printf("Case %d: %d\n",cnt++,ans); } return 0;}
- Lightoj1241——Pinocchio (模拟+ceil)
- LightOJ - 1241 Pinocchio (模拟)
- LightOJ 1241- Pinocchio【模拟】
- MATLAB——fix,round,ceil 函数
- UVa 10673 Play with Floor and Ceil ACM——数论 (扩展欧几里得算法)
- ceil
- ceil
- ceil
- ceil
- Make Pinocchio executable
- ural 1053 Pinocchio
- uva 10673 ——Play with Floor and Ceil
- 悼念512汶川大地震遇难同胞——一定要记住我爱你(数学函数floor和ceil的应用)
- 向上取整ceil()
- Light oj 1241 - Pinocchio【水】
- Oracle的取整和四舍五入函数——floor,round,ceil,trunc
- Oracle的取整和四舍五入函数——floor,round,ceil,trunc使用说明
- Oracle的取整和四舍五入函数——floor,round,ceil,trunc
- @RestController和@Controller的区别
- java类的复习
- 【java】java intellij idea 破解
- UI07UIView动画
- Servelt、mysql、html、JDBC、tomcat
- Lightoj1241——Pinocchio (模拟+ceil)
- tomcat配置的环境变量catalina.home和catalina.base 区别
- 日常学习
- android仿ios实现分段选择控件UISegmentedControl
- JAVA WEB 开发中路径问题的总结
- HTTP请求响应报文&&相关状态码&&GET_POST请求方法
- JAVA——配置文件Properties的使用
- Native Ajax in Django and jQuery
- location对象和history对象