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----–00000…
UVA 11636 Hello World 二的幂答案就是二进制长度减1,不是二的幂答案就是是二进制长度. #include<cstdio> int main() { ; ){ ; ) r++; printf("Case %d: %d\n",++kas,r); } ; } LA 3602 DNA Consensus String 贪心构造,每一位上选出现次数最多的. #include<bits/stdc++.h> using namespace std; ,ma…
题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2683 题意 原来有1个,每次可以任选数量成倍增长,问要操作多少次到n 思路 明显,先扩增到最大数位maxDigit,比如10,先扩增到8,然后再选择n - maxDigit扩增即可.因而结果为log2(n) 代码 #include <algorithm> #include…
#include <cstdio> #include <cstring> #include <iostream> using namespace std; int main() { ] = {}; ; ; i <= ; ++i) { now *= ; arry[i] = now; //printf("%d\t", arry[i]); } ; //while(scanf("%d", &t) != EOF &&a…
这道题巨坑啊,样例中以-1结束输入的,所以我就天真的以为测试数据也是以-1结束输入的 其实人家原文中说: Input is terminated by a line containing a negative integer. 是以负数结束输入,囧rz! 我这种英语渣渣,怎么可能注意到这种错误 我还以为是算法的问题,就写了两份代码 //#define LOCAL #include <cstdio> ]; int main(void) { #ifdef LOCAL freopen("1…
水题,贪心,dp都随意 /* author:jxy lang:C/C++ university:China,Xidian University **If you need to reprint,please indicate the source** */ #include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <algorithm>…
思路:复制次数最少并且可以部分复制,那么贪心地让当前尽量多的复制,如果最后一次复制会超过n,那就部分复制.即满足并且x尽量小. AC代码 #include <stdio.h> const int maxn = 20; int bit[maxn]; void init() { bit[0] = 1; for(int i = 1; i < maxn; i++) { bit[i] = bit[i-1] * 2; } } int main() { init(); int n, kase = 1;…
https://vjudge.net/problem/UVA-11636 题意: 希望输出n条语句,但是并不会循环,所以只能复制粘贴,一条语句经过复制粘贴后可以变为2条,2条变成4条....每次可以只选择一部分进行复制粘贴. 问最少经过多少次可以到n,最开始只有1句. 思路: 2^k >= n,输出k. wa: 1的时候输出0 orz,特殊情况记得特判. 代码: #include <stdio.h> #include <string.h> int main() { int n…
题目链接: https://cn.vjudge.net/problem/34398/origin 题目比较简单,就是水题,基础贪心,大于所需的即可: AC代码: 打表: #include <cmath> #include <iostream> #include <cstdio> #define ll long long using namespace std; ; ll mp[MX]; void get_table() //打一个2^n的表即可 { ; i <=…
https://vjudge.net/problem/UVA-11636 题意: 经过一次复制,一条语句会变成两条语句,再经过一次变成四条语句...求最少需要复制几次能使条数恰好为n? 思路: 贪心水题. 每次以最大复制数复制即可. #include<iostream> #include<algorithm> #include<string> using namespace std; + ; int n; int main() { ios::sync_with_stdi…