UVA 6480 Zombie Invasion(模拟退火)
A group of survivors has arrived by helicopter to an isolated island. The island is made up of a long
narrow strip of villages. The infected survivors arrived in the village to the far east and accidentally
infected the native population. The islanders are now attempting to escape the zombies that have
appeared on the east coast.
You are given N cases with 20 non-negative integers that represent the number of islanders at a
given village. The villages are represented from west to east (left to right, respectively), with the
zombies moving in from the east. The islanders have peculiar customs for traveling and will only move
between villages in pairs. Curiously, for every pair that travels between two villages, only one of them
ever survives the trip. As the zombies move west, islanders will travel to the village immediately west
of their current village as long as there are at least two islanders there. If there are an odd number
people in a village then one stays in the village and the rest move to the next village in pairs. Once
the islanders reach the village on the west coast, they will stop traveling.
Determine how many islanders remain at each village and the number that make it safely to the
village on the west coast (far left).
Input
The first line of data represents the number of data sets you will read in, N (1 ≤ N ≤ 50).
There will then be N lines of twenty 20 non-negative integers each. Each integer (≤ 1000) represents
the number of islanders who reside in a village. The leftmost integer represents the village on the west
coast, and the rightmost integer represents the village on the east coast.
Output
Your output will be N lines of twenty 20 non-negative integers. The left most number will represent
the number of islanders that reached the west. Each number to the right will represent the number of
people that stayed behind in each village.
Sample Input
1
0 0 0 0 77 0 0 99 0 0 0 40 0 0 0 17 0 1 13 10
Sample Output
5 1 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 0 0
模拟的水题。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<limits.h>
typedef long long LL;
using namespace std;
int num[25];
int main()
{
int t;
cin>>t;
while(t--)
{
for(int i=1;i<=20;i++)
scanf("%d",&num[i]);
int sum=0,temp;
for(int i=20;i>=1;i--)
{
temp=num[i]+sum;
sum=temp/2;
if(temp%2)
num[i]=1;
else
num[i]=0;
}
cout<<temp;
for(int i=2;i<=20;i++)
cout<<" "<<num[i];
cout<<endl;
}
return 0;
}
UVA 6480 Zombie Invasion(模拟退火)的更多相关文章
- UVa 12325 Zombie's Treasure Chest【暴力】
题意:和上次的cf的ZeptoLab的C一样,是紫书的例题7-11 不过在uva上交的时候,用%I64d交的话是wa,直接cout就好了 #include<iostream> #inclu ...
- UVa 12325 - Zombie's Treasure Chest-[分类枚举]
12325 Zombie’s Treasure Chest Some brave warriors come to a lost village. They are very lucky and fi ...
- uva 12325 Zombie's Treasure Chest
https://vjudge.net/problem/UVA-12325 题意: 一个箱子,体积为N 两种宝物,体积为S1.S2,价值为V1.V2,数量无限 最多装多少价值的宝物 数据范围:2^32 ...
- UVA 12325 Zombie'sTreasureChest 宝箱 (分类枚举)
看上去非常像背包的问题,但是体积太大了. 线性规划的知识,枚举附近点就行了,优先选性价比高的, 宝物有两种体积为S0,价值V0,体积S1,价值V1. 枚举分以下几种: 1:枚举拿宝物1的数量,然后尽量 ...
- Uva 12325 Zombie's Treasure Chest (贪心,分类讨论)
题意: 你有一个体积为N的箱子和两种数量无限的宝物.宝物1的体积为S1,价值为V1:宝物2的体积为S2,价值为V2.输入均为32位带符号的整数.你的任务是最多能装多少价值的宝物? 分析: 分类枚举, ...
- UVA - 12325 Zombie's Treasure Chest (分类搜索)
题目: 有一个体积为N的箱子和两种数量无限的宝物.宝物1的体积为S1,价值为V1:宝物2的体积为S2,价值为V2.输入均为32位带符号整数.计算最多能装多大价值的宝物,每种宝物都必须拿非负整数个. 思 ...
- Instruments Tutorial for iOS: How To Debug Memory Leaks【转】
If you're new here, you may want to subscribe to my RSS feed or follow me on Twitter. Thanks for vis ...
- Instruments Tutorial for iOS: How To Debug Memory Leaks
http://www.raywenderlich.com/2696/instruments-tutorial-for-ios-how-to-debug-memory-leaks Update 4/12 ...
- uva 10228 - Star not a Tree?(模拟退火)
题目链接:uva 10228 - Star not a Tree? 题目大意:给定若干个点,求费马点(距离全部点的距离和最小的点) 解题思路:模拟退火算法,每次向周围尝试性的移动步长,假设发现更长处, ...
随机推荐
- BZOJ 2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛( dp )
树形dp..水 ------------------------------------------------------------------------ #include<cstdio& ...
- javascript面向对象——tabs实例
面向过程—>面向对象 之前在未学习面向对象时,我们都是面向过程编程的.它的优点就是简单,明了,下面就来把面向过程的tabs切换改写成面向对象的方式. html: <div class=&q ...
- Ural 1001 - Reverse Root
The problem is so easy, that the authors were lazy to write a statement for it! Input The input stre ...
- 关于ios下录音
http://blog.csdn.net/silencetq/article/details/8447400 我是采用的AVAudioRecorder这个框架来进行录音 这个录音跟官方网站上的spea ...
- iOS开发- 获取精确剩余电量
[UIDevice currentDevice].batteryMonitoringEnabled = YES; double deviceLevel = [UIDevice currentDevic ...
- Swift编程语言学习11—— 枚举全局变量、局部变量与类型属性
全局变量和局部变量 计算属性和属性监视器所描写叙述的模式也能够用于全局变量和局部变量,全局变量是在函数.方法.闭包或不论什么类型之外定义的变量,局部变量是在函数.方法或闭包内部定义的变量. 前面章节提 ...
- BZOJ 1475: 方格取数( 网络流 )
本来想写道水题....结果调了这么久!就是一个 define 里面少加了个括号 ! 二分图最大点权独立集...黑白染色一下 , 然后建图 : S -> black_node , white_no ...
- [转]Centos 6.5 优化 一些基础优化和安全设置
关于CentOS服务器的优化下文作为参考. 本文 centos 6.5 优化 的项有18处: 1.centos6.5最小化安装后启动网卡2.ifconfig查询IP进行SSH链接3.更新系统源并且升级 ...
- 常见Linux服务器操作系统版本中自带的OpenSSL版本
下表是常见服务器操作系统版本中自带的OpenSSL版本: 从上表可以看出,目前常用的服务器版本中,默认OpenSSL为1.0.2的只有Ubuntu 16.04 LTS.其他版本如果要升级OpenSSL ...
- HEVC码率控制浅析——HM代码阅读之一
HM的码率控制提案主要参考如下三篇:K0103,M0036,M0257.本文及后续文章将基于HM12.0进行讨论,且首先仅讨论K0103对应的代码,之后再陆续补充M0036,M0257对应的代码分析, ...