自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 错误及收获云集

数组:strlen(n)计算数组中所存字段的长度,到第一个’\0’为止。循环:while(n) \ while( n– ) ,当 n != 0 时会执行循环。

2016-07-03 23:22:28 321 1

原创 UVA - 10152 ShellSort

题目大意:希尔排序模拟。给两个串,一个原来的,一个排序后的,排序的操作固定——从串中拿出一个元素放到顶端(想象那种抽积木的游戏)。问提取元素的顺序解题思路:参考了别人的写法。很容易知道,那些被抽出来的积木肯定按抽出来的顺序从下到上放在积木堆的顶端。 原串存成数组,排序后的串存成栈,顺序都按照先输入的在低后输入的在上的顺序,然后由上往下遍历。栈与数组中有相等的,就pop出去,不相等的元素则数组中跳过

2017-07-27 15:22:28 269

原创 UVa 101 - The Blocks Problem

算不算17第一题呢?题目大意:搭积木。输入一个 int ,代表积木总数,积木按 0 ~ n-1 编号。四个口令表示不同的搭积木操作。 - - move a onto b a,b上的积木放回原来的位置,然后a 及 a 以上的积木移动到 b 上 move a over b a 上的积木放回原来的位置,然后a 及 a 以上的积木移动到 b 上 pile a onto b

2017-07-27 14:39:16 197

原创 UVA - 113 Power of Cryptography

题目大意:求 p 开 n次方根解题思路:百度了一下,用 double 恰好可以。#include<cstdio>#include<math.h>int main () { double n, p ; while( scanf("%lf%lf",&n,&p) != EOF) { printf("%.0f\n",pow( p , 1/n ) ); } return 0;}另

2016-08-30 23:54:14 318

原创 UVA - 10161 Ant on a Chessboard

题目大意:一只蚂蚁在棋盘上以一定的规则爬行,求出一定时间过后蚂蚁的位置。解题思路:如图,时间与位置的关系。先算出完整的平方部分到哪里,剩下的时间分为对角线之前和对角线之后分别修改 x , y 值#include<cstdio>int main() { int t ; while( scanf("%d",&t) , t ) { int x = 1, y = 1 , squ = 1

2016-08-30 23:53:38 493

原创 对Uva 10420 - List of Conquests的文化补充

“This is the list of the beauties my master has loved, a list I’ve made out myself: take a look, read it with me. In Italy six hundred and forty, in Germany two hundred and thirty-one, a hundred in Fra

2016-08-20 02:16:48 467

原创 UVA - 152 Tree's a Crowd

UVA - 152 Tree’s a Crowd四级分数出来之后感觉英语水平直线下降,这题看了好久看不懂。ORZ题目大意:给出一些三维坐标,每个坐标表示一棵树,求出一棵树到其他树最短的举例,并且按柱状图的方式输出。关键词 closest neighbours 大概意为最近的树的距离,看懂这个词是关键。解题思路:暴力,一个个遍历过去。注意点:不要被样例输入坑了,输入的可不止是整数。因为这个WA好多次。

2016-08-20 01:52:51 229

原创 UVA - 10474 Where is the Marble?

UVA - 10474 Where is the Marble?题目大意:给出一组数字和一组问题,将数字按升序排列后,求每个问题第一次出现的位置。解题思路:所见即所得,和题目大意一致。#include<cstdio>#include<cstring>#include<algorithm>int main() { int c=0, n, q, num[10005],que[10005];

2016-08-20 01:52:11 183

原创 UVA - 340 Master-Mind Hints

UVA - 340 Master-Mind Hints一道反映英语水平直线下降的题目……题目大意:(反正不是我看懂的,网上题解参考)一个游戏,甲乙约定好代码长度,甲给出秘密代码。乙用规定长度的代码猜,甲回答( A ,B ),A 为猜测代码和秘密代码相同位置的数相等的个数,B 为猜测代码和秘密代码不同位置的相等的数的个数。A 优先于 B 。解题思路:先对比出 A ,再对比出 B。比较简单。注意点:我是

2016-08-20 01:51:47 247

原创 UVA - 10420 List of Conquests

UVA - 10420 List of Conquests题目大意:求出每个国家的喜欢的姑娘的人数,并按字母顺序输出。解题思路:国家名存一个数组,人名不用管全部读掉。国家名的数组排序后统计数量,按格式输出。注意点:被样例坑了!样例看起来是每行之间有一个空行,其实是没有!OUTPUT 也没有说有 blank line!今后好好看题目 TAT#include<cstdio>#include<iostr

2016-08-20 01:51:11 183

原创 UVA - 375 Inscribed Circles and Isosceles Triangles

UVA - 375 Inscribed Circles and Isosceles Triangles题目大意:给一个等腰三角形的低和高,作内切圆;再作第二个圆使其与第一个圆和三角形两斜边相切,以此类推,直到最后一个圆的半径小于 0.000001 时,输出所有圆的周长合。解题思路:用公式 s=r(a+b+c)/2 求出内切圆的半径。画图用三角函数的知识很容易可得出后一个圆和前一个圆半径的关系:r2

2016-08-20 01:50:31 175

原创 UVA - 10392 Factoring Large Numbers

UVA - 10392 Factoring Large Numbers题目大意:把一个数因式分解。解题思路:long long int可以直接算。#include<iostream>#include<math.h>using namespace std;int main() { long long int n ,a=0; while( cin >> n, n>=0 ) { if

2016-08-20 01:50:02 158

原创 Uva - 350 Pseudo-Random Numbers

Uva - 350 Pseudo-Random Numbers题目大意:给出 z、l、i、m四个数按 l =(z * l + i) % m 给出下一个数。l的数值会循环出现,求循环的长度。解题思路:按照公式来。注意点:But be careful: the cycle might not begin with the seed! 这句话一开始没注意看,然后就悲剧了。一开始给出的l不一定是循环的开始。

2016-08-20 01:49:25 235

原创 UVA - 579 Clock Hands

UVA - 579 Clock Hands题目大意:任意给出一个十二小时制的时间,求分针与时针的夹角,且只取小于180度的角。解题思路:先算出时针与12点的夹角,在算出分针与12点的夹角,两者相减,再转化为小于180度的互补角。#include<iostream>#include<cstdio>using namespace std;int main() { int h; double

2016-08-20 01:48:51 169

原创 UVA - 10387 Billiard

UVA - 10387 Billiard坑死我了,一直 WA ,原来是pi小数点后面的位不够多。题目大意:一个球从桌子中央以一定角度和初速度射出,与桌子的横边和竖边相撞 m 、n次,求初速度和角度。解题思路:看了好半天才反应过来。分解速度为横和竖两个方向,能回到原来的位置,即水平路程和竖直路程都是横边和竖边的整数倍。注意点:PI要写足!一开始写3.14159就 WA ,以后再这样能记得多少位就写多少

2016-08-20 01:48:22 162

原创 UVA - 10112 Myacm Triangles

UVA - 10112 Myacm Triangles一定要细心!被一个括号坑了好久QAQ题目大意:给出几个点的坐标,任意三个点可围成一个三角形。求其中面积最大,且不包含其他点(边界上也没有)的三角形。解题思路:穷举,用循环控制点。判断一个点是否在三角形内用面积判断,即该点与三角形任意两点所成的三角形的面积和,是否会等于原三角形的面积,是则该点在三角形内。刚好使用题目给的公式。之后每遇见一个符合条件

2016-08-20 01:47:40 195

原创 UVA - 10879 Code Refactoring

UVA - 10879 Code Refactoring总觉得这题以前做过…… 题目大意:一个整数拆成两对因数。解题思路:直接找,找到就输出。 一开始被样例迷惑害怕了很久,没想到直接AC了。#include<cstdio>#include<math.h>int main() { int n , k , l = 1 ,a ,flag; scanf("%d",&n); while(

2016-08-20 01:47:08 173

原创 UVA - 465 Overflow

UVA - 465 Overflow又认识一个黑科技 ——— atof( ) 函数,能将字符串转化为double。题目大意:判断有没有越界。解题思路:double范围比int大,所以用double来计算就好了。#include<cstdio>#include<stdlib.h>#define INF 2147483647int main() { char a[10001], b[1000

2016-08-20 01:46:33 179

原创 UVA - 424 Integer Inquiry

UVA - 424 Integer Inquiry题目大意:很好理解的,高精度数字求和。解题思路:先读入所有数字,再将所有数字右对齐,之后对应的位相加,最后余数存入 res 数组。想得是很简单。 刚发现没有右对齐的必要,直接倒过来读取就好了……注意点:读数字的顺序是从左到右,也就是靠左边的先读入!这个听起来很简单但是我卡了很久。一开始在解决数字每一位一一对应的时候想的是倒过来读入,然后就悲剧了。

2016-08-20 01:46:05 166

原创 UVA - 10106 Product

UVA - 10106 Product题目大意:高精度的乘法样例也出了,UVA的DEBUG也对比了,就是WA……占坑,过段时间看看能不能解决 #include<iostream>#include<cstring>#include<cstdio>using namespace std;int main() { char a[255] , b[255] ; int r[600];

2016-08-20 01:45:27 157

原创 UVA - 10815 Andy's First Dictionary

UVA - 10815 Andy’s First Dictionary题目大意:输入一段文字,以EOF结束,把这段文字中出现的单词以小写按字母顺序排列,类似字典那样。解题思路:一个字符一个字符地读,isalpha( ) 判断是否为字母,是就存到数组中。qsort ( ) 排序,原理其实不太理解,照着小白写的。输出控制前后不相等的输出即可。以 EOF 结束输入卡了好久……#include<iostre

2016-08-20 01:43:38 168

原创 UVA - 10115 Automatic Editing

UVA - 10115 Automatic Editing题目大意:给出 find 字符串和 replace 字符串 以及一段文字,将文字中所有与 find 相等的字符串替换为 replace 字符串。解题思路:strstr( )返回第一个子串的位置,用两个指针把文字截断,分别保存即可。百度了才知道还有 strstr( ) 这种黑科技。注意点:cin 后似乎有一个换行符还在缓冲区,要getchar

2016-08-20 01:43:04 133

原创 UVA - 409 Excuses, Excuses!

UVA - 409 Excuses, Excuses!逻辑依旧乱……题目大意:给关键字列表和句子,输出出现关键字次数最多的句子。(大概?)不区分大小写。解题思路:关键字存一个数组,句子存一个数组。一个字符串用来保存句子中每一个单词并全转化为小写。将这个字符串和关键字组匹配,找到就计数器++。计数器是开了一个与句子个数相同的数组,为了方便同时保存下标和关键字出现次数。输出的时候先找出最高出现次数,之后

2016-08-20 01:42:29 171

原创 UVA - 10010 Where's Waldorf?

UVA - 10010 Where’s Waldorf?写的很繁琐,代码很冗长。题目大意:给一段字符串,作用类似棋盘,在这段字符串中找出给定字段最近的位置。解题思路:暴力求,八个方向全写。先查首字母,找到相同的就查第二个字母在八个方向的哪个方向能对应,以此类推。注意点:一开始没有考虑到所查找的字段只有一个字符的情况,这样,第二个字母就是’\0’,那么原先判断第二个字母是否相等时,只会找棋盘边界的位置

2016-08-20 01:41:38 175

原创 UVA - 537 Artificial Intelligence?

UVA - 537 Artificial Intelligence?题目大意:应用公式 P = U*I,输入一段题目,给出 U、I或P中任意两个量的值,计算第三个量的值。解题思路:一个字符一个字符地读,用两个变量保存相邻两个字符。当后一个字符读到 ‘=’ 时,将数值保存到前一个字符所指示的对应的量中。#include<cstring>#include<cstdio>int main () {

2016-08-20 01:40:51 278

原创 UVA - 408 Uniform Generator

题目大意:输入两个数 STEP 和 MOD。按公式要能产生从 0 ~ MOD-1 的伪装随机数。解题思路: seed(x+1) = [seed(x) + step ] % mod = { [ seed( x - 1 ) + step ] % mod + step} % mod =[ step( x-1 ) + step + step ] % mod (取几次模的结果都会是一样的,所以取一次就

2016-08-09 00:13:48 185

原创 UVA 568 - Just the Facts

题目大意:求小于10000的非负数的阶乘倒数第一位非0 的数。解题思路:一个一个乘,但是只保存题目要求的位数。全乘完后输出倒数第一个非 0 的数。注意点:一定题目要求几位就保存几位,不然WA。#include<cstdio>int main() { int num , tem , sav; while( scanf("%d",&num) != EOF ) { for( sav =

2016-08-09 00:12:42 162

原创 UVA - 227 Puzzle

题目大意:一个 5X5 棋盘,上面有一个空格,输入指定的指令,空格会做相应的移动。输出棋盘最终的状态。解题思路:先把棋盘读了,指令一个字母一个字母得读。越界和读到 0 就 break,之后判断。注意点:输入的时候比如 “AWEF ”空格在最后,可能直接输的是“AWEF”,没错空格没输,所以每个 PUZZLE结束要把棋盘归空。(心酸啊QAQ)指令的换行符会保留在缓冲区,要getchar()。指

2016-08-09 00:11:17 147

原创 UVA - 10361 Automatic Poetry

题目大意:自动作诗。输入两个字符串,将串fir中两个 <> 里的内容交换顺序填入串 sec。直接看输入输出就可以了。解题思路:将串 fir 截断于第一个 ‘<’ ,分为firs2s4,后面的内容用4个字符串来保存。sec截断于第一个 ‘.’ ,按要求的顺序输出。注意点:cin >> n 之后有一个换行符被保存在缓冲区,这时候不能直接就输入字符串否则读到的是换行。先用getchar()把换行符读出缓

2016-08-09 00:04:05 133

原创 UVA - 10878 Decode the tape

题目大意:破解图案对应的信息。解题思路:空格对应 0 , “ o ”对应 1 ,每行就对应一个二进制数,这个数在十进制下就是所求字符的ASCII值。题外话:看了网络的解题思路似乎可以把 res 设为二进制数直接加,这样不用多一步转成十进制了。#include<string.h>#include<stdio.h>#include<math.h>int main() { char inpu[1

2016-08-08 23:56:00 153

原创 UVA - 550 Multiplying by Rotation

题目大意:一个数 A 乘以 B 的结果,是将 A 的最后一位数提到第一位所形成的数字。输入进制 k 、最后一位数 m 、乘数 n , 输出该数据有几位。解题思路:已知最后一位 m,则 mn%k 为倒二数字(乘 n 后的末位)且有进位到倒三数字(进位了 mn/k);mn%kn + m*n/k 为倒三数字(乘 n 后的倒二位),依次类推,当取到一位数字与末位相等且不再进位,输出。#include<cst

2016-08-08 23:50:15 201

原创 UVA - 575 Skew Binary

题目大意:把一个数转化成斜进制。解题思路:按照题目所给公式即可。注意点:所输入的数超过了 int 的范围,n 不能为 int 型。#include<iostream>#include<cstdio>#include<string.h>#include<math.h>using namespace std;int main() { int k , save , val, l; c

2016-08-08 23:43:52 157

原创 UVA - 10110 Light, more light

题目大意:行走次数是灯的序号的因数时,改变灯的状态。只考虑最后一个灯。解题思路:一个数的的平方根是整数,则其因数为奇数个;一个数的平方根不是整数,则其因数为偶数个。所以只要判断平方根是否为整数即可。#include<iostream>#include<cstdio>#include<math.h>using namespace std;int main() { long n , root;

2016-08-08 23:34:42 147

原创 UVA - 1587 Box

题目大意:输入六块木板的长宽,判断他们能否围成立方体。解题思路:长方体的四条棱相等,判断是否有三组相同的数;特殊情况正方体则直接判断。#include<iostream>#include<cstring>#include<stdio.h>using namespace std;int main() { int i , j ,k , l , cub[6][2] ,count ,cou

2016-08-08 23:33:18 233

原创 UVA - 156 Ananagrams

题目大意:一个单词不区分大小写任意交换字母顺序形成另一个单词,改过程称为 “ Ananagrams ”。求出一组单词中,不是 “ Ananagrams ”的单词,并按字母顺序输出。解题思路重点内容:参考了小白。将输入的字符数组 A 排序后存入字符数组 B;B 单词中全转化成小写,将每个单词的每个字母按字母顺序排列;比较 B 中字符串,无相同的,则输出 A 相应位置的字符串。#include<iost

2016-08-08 23:15:34 130

原创 UVA - 1368 DNA Consensus String

题目大意:计算这一组碱基序列的共同序列碱基以及出错数(不大会翻译)。一组碱基序列中的某一位出现最多次数的碱基为要输出的串在这一位的值,如果碱基出现次数相同则按字母顺序选择。要求输出的数字为最小修改的次数。解题思路:先统计在这组串的某个位置四个碱基的出现次数,根据次数判断。#include<iostream>#include<string.h>#include<stdio.h>using nam

2016-08-08 23:09:38 252

原创 UVA - 644 Immediate Decodability

题目大意:输入一组二进制的字符串,看其中任意一个字符串是否是其他字符串的前缀。解题思路:逐一对比,遇到符合条件的直接跳出。注意串的比较可能前者是后者前缀,也可能后者是前者前缀。#include<iostream>#include<stdio.h>#include<string.h>using namespace std;int main() { char a[15][10]; i

2016-08-08 23:07:47 130

原创 UVA - 401 Palindromes

题目大意:输入一个字符,看它是否是 ① 镜像文 ② 回文 ③ 两者均是 ④ 两者均非,并输出相应的结果。解题思路:设两个数组保存对应的镜像文,检查所输入的数组在对称位置的元素是否等于两个对应的镜像文字,判断镜像文;检查所输入的数组在对称位置的元素是否相等,判断回文。#include<iostream>#include<stdio.h>#include<string.h>using namesp

2016-08-08 23:06:47 149

原创 UVA - 1586 Molar Mass

题目大意:计算相对分子质量。解题思路:读入分子式存入数组,遍历数组,当一个数组的一个元素是字母时判断之后的两个元素是 ① 数字 ② 字母 ③ \0 并作出相应的加法处理。#include<stdio.h>#include<string.h>int main() { int t , i ; double qua; char s[85]; scanf("%d",&t);

2016-08-08 23:05:05 169

原创 UVA-10340 All in All

题目大意:字符串t删去任意字符而且不改变字符的顺序可以组成字符串s,则输出“YES”;否则输出“No”。**解题思路:**s中的字符按顺序提取,在字符t中按顺序一个字母一个字母地对比。#include<iostream>#include<stdio.h>#include<string.h>using namespace std;int main() {char s[100005] , t[

2016-07-16 00:57:00 220

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除