UVA.11636 Hello World! (思维题)
UVA.11636 Hello World! (思维题)
题意分析
这题挺水的,还是错了几发。 QWQ。
有一个同学打了一行hello world,现在他想打n行hello world,请问最少复制粘贴几次。
先说说我的XX想法。绝对是中了二进制的邪!样例给给打好呀,如果我想输出4个,那么复制一次,得到2个,再复制一次得到4个。然后就莫名其妙的和二进制连起来了。
十进制———-二进制
0————–00000000
1————–00000001
2————–00000010
3————–00000011
4————–00000100
然后十进制对应的2^n就是在这个次数下最多得到的次数,然后又莫名其妙的想到了昨天写的(s &(1<< n)。结果可想而知,就是错了。
还是说正解吧。
假设复制n次,最多的到的个数是2^n,这个是确定无疑的,因为每次都将个数乘2嘛。于是我们可以从小到大依次枚举,即依次乘2,什么时候超过了给定的n,那么就说明这个就是最小的复制次数。下举例说明:
1.n=3
第一次 1 * 2 = 2
第二次 2 * 2 = 4 结束。
实际的复制情况是
1 * 2 = 2 , 2+1 = 3。
2.n=5
第一次 1 * 2 = 2
第二次 2 * 2 = 4
第三次 4 * 2 = 8
3.n=100
第一次 1 * 2 = 2
第二次 2 * 2 = 4
第三次 4 * 2 = 8
第四次 8 * 2 = 16
第五次 16 * 2 = 32
第六次 32 * 2 = 64
第七次 64 * 2 = 128
然后每次乘2,可以用位运算来简化。
说到底还是有点二进制的色彩的。
代码总览
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
int n,kase = 0;
while(scanf("%d",&n)&&n>0){
int ans = 0;
while(1<<ans<n) ans++;
printf("Case %d: %d\n",++kase,ans);
}
return 0;
}
UVA.11636 Hello World! (思维题)的更多相关文章
- UVA.11464 Even Parity (思维题 开关问题)
UVA.11464 Even Parity (思维题 开关问题) 题目大意 给出一个n*n的01方格,现在要求将其中的一些0转换为1,使得每个方格的上下左右格子的数字和为偶数(如果存在的话),求使得最 ...
- UVA 11636.Hello World!-水题
Hello World! Time limit: 1.000 seconds When you first made the computer to print the sentence “Hello ...
- UVA 1394 And Then There Was One / Gym 101415A And Then There Was One / UVAlive 3882 And Then There Was One / POJ 3517 And Then There Was One / Aizu 1275 And Then There Was One (动态规划,思维题)
UVA 1394 And Then There Was One / Gym 101415A And Then There Was One / UVAlive 3882 And Then There W ...
- UVA.699 The Falling Leaves (二叉树 思维题)
UVA.699 The Falling Leaves (二叉树 思维题) 题意分析 理解题意花了好半天,其实就是求建完树后再一条竖线上的所有节点的权值之和,如果按照普通的建树然后在计算的方法,是不方便 ...
- UVA.679 Dropping Balls (二叉树 思维题)
UVA.679 Dropping Balls (二叉树 思维题) 题意分析 给出深度为D的完全二叉树,按照以下规则,求第I个小球下落在那个叶子节点. 1. 默认所有节点的开关均处于关闭状态. 2. 若 ...
- UVA.11384 Help is needed for Dexter (思维题)
UVA.11384 Help is needed for Dexter (思维题) 题意分析 同样水题一道,这回思路对了. 给出数字n,面对一个1,2,3,4--n的数字序列,你可以对他们的部分或者全 ...
- UVA.10881 Piotr's Ants (思维题)
UVA.10881 Piotr's Ants (思维题) 题意分析 有一根长度为L cm的木棍,上有n只蚂蚁,蚂蚁要么向左爬,要么向右,速度均为1cm/s,若2只蚂蚁相撞,则蚂蚁同时调头.求解第T秒时 ...
- UVA.11300 Spreading the Wealth (思维题 中位数模型)
UVA.11300 Spreading the Wealth (思维题) 题意分析 现给出n个人,每个人手中有a[i]个数的金币,每个人能给其左右相邻的人金币,现在要求你安排传递金币的方案,使得每个人 ...
- 思维题 UVA 10881 Piotr's Ants
题目传送门 /* 题意:在坐标轴上一群蚂蚁向左或向右爬,问经过ts后,蚂蚁的位置和状态 思维题:本题的关键1:蚂蚁相撞看作是对穿过去,那么只要判断谁是谁就可以了 关键2:蚂蚁的相对位置不变 关键3:o ...
随机推荐
- 引领技术变革,腾讯云、腾讯WeTest和英特尔,合作布局云游戏
WeTest 导读 ChinaJoy作为中国泛娱乐产业年度风向标,受到全球业界的高度关注.在本届ChinaJoy上,腾讯云.腾讯WeTest和英特尔,合作为游戏玩家.游戏开发者等业界人士联合展出了云游 ...
- Python-S9——Day82-CRM项目实战
1.权限的概念: 2.RBAC的设计: 3.注册登录用户所有权限到session中: 4.权限的校验: 5.基于中间件的权限校验: 1.权限的概念: 1.1 项目与应用: Project App 1. ...
- Java中定时器相关实现的介绍与对比之:Timer和TimerTask
Timer和TimerTask JDK自带,具体的定时任务由TimerTask指定,定时任务的执行调度由Timer设定.Timer和TimerTask均在包java.util里实现. 本文基于java ...
- Java进阶知识点:服务端高并发的基石 - NIO与Reactor AIO与Proactor
一.背景 要提升服务器的并发处理能力,通常有两大方向的思路. 1.系统架构层面.比如负载均衡.多级缓存.单元化部署等等. 2.单节点优化层面.比如修复代码级别的性能Bug.JVM参数调优.IO优化等等 ...
- JAVA集合类(大公司面试喜欢问的)
分类: 核心JAVA(11) 版权声明:本文为博主原创文章,未经博主允许不得转载. 看了一些所谓大公司的Java面试问题,发现对于JAVA集合类的使用都比较看重似的,而自己在这方面还真的是所真甚少 ...
- 自测之Lesson10:管道
题目:建立双向管道,实现:父进程向子进程传送一个字符串,子进程对该字符串进行处理(小写字母转为大写字母)后再传回父进程. 实现代码: #include <stdio.h> #include ...
- JSR303中的来验证数据信息
spring mvc之实现简单的用户管理三 博客分类: spring spring mvc spring mvc dispatcherServlet springspring mvcbean vali ...
- 第三次寒假作业 sketch 了解
什么是sketch? sketch 是一种基于散列的数据结构,可以在高速网络环境中,实时地存储流量特征信息,只占用较小的空间资源,并且具备在理论上可证明的估计精度与内存的平衡特性. 通过设置散列函数, ...
- 福大软工1816:Alpha(9/10)
Alpha 冲刺 (9/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.完善通过父子进程调用wxp ...
- 项目uml
[团队信息] 团队项目: 小葵日记--主打记录与分享模式的日记app 队名:日不落战队 队员信息及贡献分比例: 短学号 名 本次作业博客链接 此次作业任务 贡献分配 备注 501 安琪 http:// ...