02 2013 档案

151 - Power Crisis
摘要:题目大意:题目原文:http://uva.onlinejudge.org/external/1/151.pdf大概是说有N个地区,编号分别是1~N,要按一个算法规则依次断电,这个算法是:规定一个数字m,第一个断电的是1地区,然后往后数m个没断电的城市,第二个断电的应该是1+m 地区,如果数的过程中到了第N个城市,则从头开始继续往下数。如:N=17,m=5的时候,断电的顺序依次是:1,6,11,16,5...要注意到16的时候,往下数是17,2,3,4,5(因为1已经断电了,不数。)那么题目要求输入一个N,求出最后一个断电的地区是13的最小的m值输出。使用穷举法即可完成了。输入一个N,然后定义一 阅读全文

posted @ 2013-02-16 23:17 T^T 阅读(307) 评论(0) 推荐(0)

10189 - Minesweeper
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=13&page=show_problem&problem=1130扫雷游戏。。。输入“*”的分布,“.”号变成数字表示该数字周围的八个格子里面有几个“*”。用二维字符串数组来储存输入的数据,然后从第一格开始数周围的格子的“*”个数。附上代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 int x,y,i,j,i2,j2,n= 阅读全文

posted @ 2013-02-16 22:52 T^T 阅读(275) 评论(0) 推荐(0)

160 - Factors and Factorials
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=3&problem=96&mosmsg=Submission+received+with+ID+11291690输入一个数n要将n!分解成各个素数的乘积,输出各个素数因子所乘的次数。如:5!=120=2*2*2*3*5;那么就是有三个2,一个3,一个5。我的做法是将5!分开=5*4*3*2;然后逐一计算因子数,一个5,一个3, 4有两个2, 2又 阅读全文

posted @ 2013-02-15 17:32 T^T 阅读(246) 评论(0) 推荐(0)

10370 - Above Average
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&category=15&problem=1311&mosmsg=Submission+received+with+ID+11291586输入一个数组,然后输出大于平均数的比例。水题,直接按照题目的意思,求出平均数,然后计算一下大于平局数的个数,再除以n以百分比的形式输出,就OK啦!新手要注意的是,%输出。。。。要输入两个%才可以。附上代码:View Code 1 阅读全文

posted @ 2013-02-15 16:44 T^T 阅读(177) 评论(0) 推荐(0)

10038 - Jolly Jumpers
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=12&page=show_problem&problem=979n个数的数列,前后两个数之间的差组成的集合正好是1~n-1,这样的数列叫做jolly jumper。题目要求输入一个数列,输出Jolly或者Not jolly。首先,输入n,按输入的顺序,逐一读取每个数,第一个数用x储存起来,然后读取第二个数&y,计算出|x-y|然后判断这个数字是不是在1~n-1之间,如果不是,那么N 阅读全文

posted @ 2013-02-15 16:21 T^T 阅读(541) 评论(0) 推荐(0)

10055 - Hashmat the Brave Warrior
摘要:题目大意题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=12&page=show_problem&problem=996输入两个数,输出两个数的差。。。好水的题。附上代码:View Code 1 #include<stdio.h>2 int main()3 {4 long a,b;5 while(scanf("%ld%ld",&a,&b)!=EOF)6 printf("%ld\n" 阅读全文

posted @ 2013-02-15 16:09 T^T 阅读(179) 评论(0) 推荐(0)

10082 - WERTYU
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=12&page=show_problem&problem=1023按照他给的字母,按键盘的排列顺序往左边推一个字母或符号输出。由于题目说不会出现QAZ`等字符,也不需要考虑回车退格键,所以我使用了一个字符串数组来把键盘的顺序储存起来,然后判断当前字符,输出下标减一的那个字符就可以了。(题目只需要大写字母。)附上代码: 1 #include 2 int main() 3 { 4 char a 阅读全文

posted @ 2013-02-15 16:06 T^T 阅读(328) 评论(0) 推荐(0)

10008 - What's Cryptanalysis?
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=12&page=show_problem&problem=949题目是要计算所给的文字中计算出各个字母的数量,然后按从大到小的顺序输出,如果数量相同的按字母顺序排列。数量是0的不用输出。题目只需要逐个记录输入的字符并计数就可以了。。。输入开头的数字代表的是接下来有几行,但是这几行的字符都是一起统计的,所以可以直接读入字符,并不需要管他有几行。直接使用while(scanf("%c 阅读全文

posted @ 2013-02-13 13:30 T^T 阅读(303) 评论(0) 推荐(0)

575 - Skew Binary
摘要:题目大意:题目原文:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=7&page=show_problem&problem=516斜二进制数满足:所以0-10分别是0, 1, 2, 10, 11, 12, 20, 100, 101,和 102.要求输入斜二进制数,输出十进制数。首先看到题目n不大于231 - 1 = 2147483647 而例子中就有2147483647,所以输入的斜二进制数的位数不会超过31位。如此多的位数,我采用了字符串数组来储存输入。 阅读全文

posted @ 2013-02-13 13:10 T^T 阅读(179) 评论(0) 推荐(0)

10035 - Primary Arithmetic
摘要:题目大意题目原文:http://uva.onlinejudge.org/external/100/10035.pdf输入两个数,输出两个数相加需要进位的次数。由于题目要求10位,而且一行内接收两个数,那么我使用了scanf("%s%s",a,b),用a,b两个字符串变量来接收。然后用两个指针(x,y)来指向计算位的位置,用一个变量bo来记录是否有进位。每次判断一次该位相加之和是否大于10,大于10说明有进位,计数变量加一。并x--;y--;但是用变量做的时候会出现x,y指针指向a[0]和b[0]之后再x--超出字符串数组的范围的情况。(可能只有一个超出)针对这种情况,判断x 阅读全文

posted @ 2013-02-12 00:37 T^T 阅读(215) 评论(0) 推荐(0)

10018 - Reverse and Add
摘要:题目大意:题目原文:http://uva.onlinejudge.org/external/100/10018.pdf(不知道为什么这个地址打不开了)题目是说给我们一个数字,将它逆转然后加上原来的数,然后判断其结果是不是回文数(顺着和逆着看一样),如果不是回文数,则重复以上步骤。计算出一个数要几次操作形成回文数,并输出这个回文数。直接按题目的意思计算即可。附上代码:View Code 1 #include<stdio.h> 2 long p10(long a)//返回10^a 3 { 4 long x=1; 5 while(a--) 6 x*=10; 7 return x; 8 . 阅读全文

posted @ 2013-02-12 00:20 T^T 阅读(234) 评论(0) 推荐(0)

494 - Kindergarten Counting Game
摘要:题目大意:题目原文:http://uva.onlinejudge.org/external/4/494.pdf给你一段文字,判断出有几个单词。。。单词都是由字母组成的,逐个判断字符,如果是连续的一串字母则视为一个单词,碰到标点,不算入单词。只要用一个变量来确定前一个字符是不是字母,前一个字符时字母而后一个字符不是,那么就视为一个单词。然后计数一下就可以了。要注意的是,碰到回车符要另外处理,回车符说明一句话完成了,需要输出单词数并初始化计数变量。附上代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 char a; 5 int x= 阅读全文

posted @ 2013-02-12 00:12 T^T 阅读(210) 评论(0) 推荐(0)

458 - The Decoder
摘要:题目大意:题目原文http://uva.onlinejudge.org/external/4/458.pdf解密一段文字。。。以ASCII码判断一下就知道相差7.。。我们只要逐个ASCII码减7然后输出就可以了。。要注意的是,碰到回车要直接输出回车。。。参考代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 char c; 5 while(scanf("%c",&c)!=EOF) 6 { 7 if(c!='\n') printf("%c",c-7); 8 else p 阅读全文

posted @ 2013-02-12 00:07 T^T 阅读(152) 评论(0) 推荐(0)

272 - TEX Quotes
摘要:题目大意:题目原文:http://uva.onlinejudge.org/external/2/272.pdf将所给的文字中的引号转化成前引号和后引号。解题思路:一句话中,一个前引号,后面一个一定是后引号,后引号后面一个是前引号。。。所以我们只需要一个字符一个字符读取数据,没碰到引号的话按原本输出,如果是引号,则判断一下前一次出现引号是前引号还是后引号,然后输出。。。碰到回车符号的时候也输出一个回车即可。单双引号要分开判断。。。参考代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 char c; 5 int b1=1,b2=1; 阅读全文

posted @ 2013-02-12 00:04 T^T 阅读(180) 评论(0) 推荐(0)

136 - Ugly Numbers
摘要:题目大意题目原文:http://uva.onlinejudge.org/external/1/136.pdf因子只有2,3,5的数被称为Ugly Number。题目要求输出第1500个Ugly Number。判断一个数是否只有2,3,5因子,只需将这个数一直除以2,3,5知道不能整除为止。如果最后结果是1的话,那么这个数就是Ugly Number。但是这样的做法从1开始判断下来到第1500个数答案为八亿多,耗时20多秒才计算完成。不过题目没有测试数据,只需要最后结果,那么只需将最后结果输出就可以了。一下附上计算代码和AC代码:计算代码 1 #include<stdio.h> 2 i 阅读全文

posted @ 2013-02-10 23:05 T^T 阅读(240) 评论(0) 推荐(0)

382 - Perfection
摘要:题目大意题目原文 http://uva.onlinejudge.org/external/3/382.pdf一个数的因子之和大于它本身则输出“ABUNDANT”;小于它本身则输出“DEFICIENT”;等于则输出“PERFECT”;由于题目只要求到60000,且不超过100个测试数据,只需要用穷举法即可;多注意题目的格式要就可以AC了。附上代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 long a,b,s,i; 5 printf("PERFECTION OUTPUT\n"); 6 while(1) 7 { 阅读全文

posted @ 2013-02-10 22:55 T^T 阅读(182) 评论(0) 推荐(0)

299 - Train Swapping
摘要:题目大意题目原文 http://uva.onlinejudge.org/external/2/299.pdf火车的排序题目要求将写有数字1—L的火车车厢按顺序排列好,求需要的次数。这题就是求一堆数字用冒泡排序法排序所需要的交换次数。所以按冒泡排序法计数一下即可。附上代码:View Code 1 #include<stdio.h> 2 int main() 3 { 4 int n,l,i,j,*p1,*p2,k,num; 5 scanf("%d",&n); 6 while(n--) 7 { 8 scanf("%d",&l); 9 阅读全文

posted @ 2013-02-10 22:53 T^T 阅读(207) 评论(0) 推荐(0)

291 - The House Of Santa Claus
摘要:题目大意题目原文 http://uva.onlinejudge.org/external/2/291.pdf题目要求一笔画成那个房子的图案,将所有的情况按从大到小的顺序打印出来。定义一个二维数组如下:a 1 2 3 4 51 0 1 1 0 12 1 0 1 0 13 1 1 0 1 14 0 0 1 0 15 1 1 1 1 0如a[1][2]=a[2][1]=1表示点2和点1是连通的,0表示不连通。然后逐个尝试。走过的路线将其赋值2。首先,从1出发,则dot=1;然后从a[1]这行开始查找值为1的编号,这里是2,则dot=2,再循环;附上代码:View Code 1 #include< 阅读全文

posted @ 2013-02-10 22:52 T^T 阅读(210) 评论(0) 推荐(0)

102 - Ecological Bin Packing
摘要:题目大意题目原文 http://uva.onlinejudge.org/external/1/102.pdf三个箱子里面放有若干个三种颜色的瓶子,分别是B(棕色)G(绿色)和C(透明),题目要求一次移动一个瓶子最后使得三个箱子里面分别放三种不同颜色的瓶子(即最后每个箱子里面的瓶子颜色都一样),并求出最后三个箱子放的瓶子颜色,和需要移动的瓶子数。首先要求三个箱子三个瓶子,我们可以定义一个二维数组来保存输入的数据(a[3][3]),应题目要求,输入的九个数字钟,前三个数分别是第一个箱子里面的B、G、C颜色的瓶子的个数,中间三个数是第二个箱子里面的各种颜色的瓶子数,后三个数为第三个箱子里面的各种颜色 阅读全文

posted @ 2013-02-10 22:50 T^T 阅读(317) 评论(0) 推荐(0)

100 - The 3n + 1 problem
摘要:题目大意题目原文 http://uva.onlinejudge.org/external/1/100.pdf一个数(一百万以内)如果是奇数,乘三加一;如果是偶数,除以二;循环下去,直到等于1为止,这样包括他自己本身出现的数字的个数被称为该数字的“3n+1长度”;题目要求输入两个数,求出这两个数(i和j)之间的最长的“3n+1长度”。首先想到i和j有大小的关系,但题目要求输出的顺序不变,所以先输入i和j并立马打印出来,然后再比较i和j的大小并交换。然后根据穷举法,逐个求出i和j之间的数的“3n+1长度”,并设置一个变量来保存它,求出最大值,最后打印出这个最大值。附上代码:View Code 附上 阅读全文

posted @ 2013-02-10 22:47 T^T 阅读(207) 评论(0) 推荐(0)

导航