基础入门
RookieZQF
尽自己最大努力才能不后悔
展开
-
Repeating Decimals
Uva202这道题可以直接将值除出来就可以了,如果出现了余数相同就表示出现循环数了,输出的时候需要注意一下。#include #include #define clr( a ) memset ( a, 0, sizeof ( a ) )const int maxn = 3005;int ans[maxn], vis[maxn], s[maxn];int main ( ){翻译 2015-10-16 11:30:08 · 332 阅读 · 0 评论 -
Puzzle
A children's puzzle that was popular 30 years ago consisted of a 55 frame which contained 24 smallsquares of equal size. A unique letter of the alphabet was printed on each small square.翻译 2015-10-15 17:07:40 · 394 阅读 · 0 评论 -
DNA Consensus String
UVa1368这道题我以为是要求一个串到所有串的距离最小,不过好像可以扩展,但是我好像写不出。#include #include const int maxn = 1005;char str[maxn][maxn], ch[5] = "ACGT", ans[maxn];int cnt[5];int main ( ){ int T, n, m, value; sc翻译 2015-10-16 10:05:36 · 264 阅读 · 0 评论 -
Crossword Answers
Uva232这道题只要根据输出来输出,另外注意不管行还是列每个字符都只会用一次,所以标记就行了。#include #include #define clr( a ) memset ( a, 0, sizeof ( a ) )const int maxn = 15;int vis[maxn][maxn], value[maxn][maxn];char str[maxn][maxn]翻译 2015-10-15 17:53:31 · 659 阅读 · 0 评论 -
The Dole Queue
UVa133相当于约瑟夫环问题,只是可以写个函数即可顺时针走,又可以逆时针走。#include #include const int maxn = 25;int vis[maxn], n;int go ( int start, int d, int step ){ for ( int i = 0; i < step; i ++ ) { do翻译 2015-10-29 10:01:07 · 489 阅读 · 0 评论 -
Ancient Cipher
UVa1339这道题注意并不是固定变换,所以只要判断字符个数是否一样。#include #include #include #define clr( a ) memset ( a, 0, sizeof ( a ) )const int maxn = 105, N = 26;int cnt1[N], cnt2[N];char str[maxn], ch[maxn];in翻译 2015-10-29 09:21:00 · 484 阅读 · 0 评论 -
Spreadsheet Tracking
UVa 512这道题如果直接操作步骤很麻烦,而且还容易出错,先将所有操作保存,然后给定一个坐标后就每个操作进行变换,比如:插入行在当前坐标的下面,那么插入的那行对当前坐标没有影响。#include const int maxn = 10005;struct node{ char ch[5]; int r1, c1, r2, c2; int n, x[2翻译 2015-10-29 11:50:15 · 429 阅读 · 0 评论 -
Message Decoding
UVa213这道题对练习操作挺不错的,将字符保存到二维数组中就行了。#include #include const int maxn = 8;char str[maxn][1 << maxn];char ch[1 << maxn];char readchar ( ){ while ( 1 ) { char ch = getchar ( );翻译 2015-10-29 10:57:36 · 483 阅读 · 0 评论 -
Hangman Judge
UVa489这道题只要注意标记,统计一下个数就行了。#include #include const int maxn = 105, N = 26;char str[maxn], ch[maxn];int vis[N];int main ( ){ int cas, len1, len2, err, cnt, rig; while ( ~ scanf ( "%d",翻译 2015-10-29 09:37:19 · 656 阅读 · 0 评论 -
Digit Generator
For a positive integer N, the digit-sum of N is defined as the sum of N itself and its digits. WhenM is the digitsum of N, we callN a generator of M. For example, the digit-sum of 245 is 256翻译 2015-10-13 18:33:13 · 1091 阅读 · 0 评论 -
Circular Sequence
Some DNA sequences exist in circular forms as in the following figure, which shows a circular sequence ``CGAGTCAGCT", that is, the last symbol ``T" in ``CGAGTCAGCT" is connected to the first symbol ``翻译 2015-10-13 18:52:16 · 818 阅读 · 0 评论 -
Floating-Point Numbers
UVa11809这道题主要说了浮点数在二进制的存储方式,比如0.111111*2^111111,尾数位数算是5位,前面的0.1本来会有的,那么尾数就等于1-2^(-i-1)(等比数列的求和公式),另一个就为2^(2^j-1),然后直接打表就行了,因为(1-2^(-i-1))*2^(2^j-1)=A*B^10,这个数太大,所以可以对两边取对数保存,整数部分是B,小数部分就是A(log翻译 2015-10-25 22:04:35 · 427 阅读 · 0 评论 -
Box
UVa1587这道题要组成长方体,每两面是相等的,但是没有顺序,所以就去掉一个重复的,就只剩三个,然后枚举这三个,将所有可能列举出来。#include #include #include #define clr( a ) memset ( a, 0, sizeof ( a ) )const int maxn = 6, N = 10005;int x[maxn], y[ma翻译 2015-10-21 20:50:57 · 270 阅读 · 0 评论 -
Kickdown
UVa 1588做了这道题就感觉自己基础还是不行,好多地方考虑错了,一直考虑长的一定是放下面的,但是这个考虑是错的,比如:222222222221111所以长短都需要放下面匹配。#include #include #define INF 1000005const int maxn = 205;char str[maxn], ch[maxn], t[maxn];vo翻译 2015-10-22 09:12:01 · 424 阅读 · 0 评论 -
Master-Mind Hints
MasterMind is a game for two players. One of them, Designer, selects asecret code. The other,Breaker, tries to break it. A code is no morethan a row of colored dots. At the beginning of a game, the翻译 2015-10-03 19:02:14 · 308 阅读 · 0 评论 -
All in All
UVa10340#include #include const int maxn = 1000005;char s[maxn], t[maxn];int main ( ){ int len; while ( ~ scanf ( "%s%s", s, t ) ) { len = strlen ( s ); int i = 0;翻译 2015-10-16 11:41:21 · 283 阅读 · 0 评论 -
差值
描述 输入一个整数数组,将它们连接起来排成一个数,找出能排出的所有数字中最大,最小的两个,输出两个数的差值。例如输入数组{1, 2},则输出9。输入第一行输入一个整数T,表示有T组测试数据。每组测试数据的第一行输入一个整数n(0输出输出最大数最小数的差值,输出占一行。样例输入131 2 3样例输出198这道题有种贪心的思想,就翻译 2015-12-06 11:34:54 · 244 阅读 · 0 评论