随笔分类 -  ACM

1
摘要:题目不难,就是有点麻烦。会用到栈。#include #include struct _r { int a[30]; int x;}r[30];int n;// 判断a, b是否在同一堆中int pos(int a) { for (int i=0; i<n; i++) { ... 阅读全文
posted @ 2013-02-28 09:41 zcube 阅读(168) 评论(0) 推荐(0)
摘要:用DFS把相邻的@字符标记掉,并统计块的个数就好了。#include int m, n;char map[105][105];int dir[8][2] = {-1, -1, -1, 0, -1, 1, 0, -1, // 定义8个方向数组 0, 1, 1... 阅读全文
posted @ 2013-02-28 07:48 zcube 阅读(173) 评论(0) 推荐(0)
摘要:就把CSDN当成保存UVA做题代码的一个地方好了。。。#include #include struct _r { char a[53][3]; int x;}r[53]; // 定义好要用的数据结构// 移动处理函数void deal(int n, int s) { int le... 阅读全文
posted @ 2013-02-27 18:08 zcube 阅读(154) 评论(0) 推荐(0)
摘要:又是一道让我心碎的题。UVA上提交了10几次都错了,在北大上又过了。用栈做的,在处理输入和判断括号上感觉还蛮良好的。#include #include #define MAXN 10000int stack[MAXN];int topc, top, t;bool judge() { int ... 阅读全文
posted @ 2013-01-26 22:32 zcube 阅读(149) 评论(0) 推荐(0)
摘要:在纸上画了下,用全等三角形定则,找了下规律。#include #include double compute(double x1, double y1, double x2, double y2) { return (x1+x2+y1-y2)/2;}int main() { doubl... 阅读全文
posted @ 2013-01-26 22:26 zcube 阅读(142) 评论(0) 推荐(0)
摘要:汝佳哥把这道题归为数论。按照题中的计算步骤,直接模拟就过了。#include #include #include int main() { char str[50]; while (scanf("%s", str) && str[0]!='0') { int len = ... 阅读全文
posted @ 2013-01-26 22:22 zcube 阅读(164) 评论(0) 推荐(0)
摘要:大数开方,结果不超过整型范围。我用的高精和二分在POJ通过了,在UVA没通过。后来在网上看到有大牛直接用double过了,实在让人佩服啊。我的代码:#include #include // 交换字符串函数void swap_str(char str[]) { int len = strlen... 阅读全文
posted @ 2013-01-26 22:18 zcube 阅读(163) 评论(0) 推荐(0)
摘要:这道题读懂题意后还是很简单的,除了中间要注意gets()函数的用法。gets()函数可接收空格符,并且以回车结束后会吸收掉结束的换行符。但是scanf()函数以空格和换行作为输入的结束符,且不会吸收结束符。所以gets()前如果有scanf()函数,一定得加getchar()函数吸收掉sanf()... 阅读全文
posted @ 2013-01-25 02:01 zcube 阅读(142) 评论(0) 推荐(0)
摘要:这道题还是有点麻烦的。如果把每个句子存为一个字符串,则在最后分离单词的时候会很麻烦。所以,我用一个结构体来作为一句话,把每句话中的单词单独储存,则最后处理的时候会方便很多。#include #include #include struct ss { int x, y; char wor... 阅读全文
posted @ 2013-01-24 21:38 zcube 阅读(164) 评论(0) 推荐(0)
摘要:该题中主要用到了整型相除截断的技巧。例如,计算行数和输出时候判断是否为最后一列。#include #include #include int cmp(const void *_a, const void *_b) { char *a = (char*)_a; char *b = (ch... 阅读全文
posted @ 2013-01-23 16:31 zcube 阅读(175) 评论(0) 推荐(0)
摘要:首先进行单词的大写转小写,然后重排,所以得保存两份单词进行操作。当然,还要标记这个单词重排后是否出现两次,所以还需要一个flag作为标记。处理完成后,最后还需要按照原先单词的字典顺序输出,所以还需要排一次序。#include #include #include struct _s { cha... 阅读全文
posted @ 2013-01-23 15:29 zcube 阅读(171) 评论(0) 推荐(0)
摘要:输入数字是以回车结束每一行,注意只输入一个数字情况。感觉这道题答案应该不唯一。下面代码是从后往前搜索,如果在相应位置就过去;如果不在就交换到第0位置,然后在做一次交换到相应位置。#include #include #include int cmp(const void *_a, const voi... 阅读全文
posted @ 2013-01-09 22:23 zcube 阅读(146) 评论(0) 推荐(0)
摘要:模拟下冒泡,每次交换都+1即可。#include int main() { int n, l, s[55]; scanf("%d", &n); while (n--) { scanf("%d", &l); for (int i=0; i<l; i++)... 阅读全文
posted @ 2013-01-05 18:27 zcube 阅读(181) 评论(0) 推荐(0)
摘要:原本以为精度问题,原来是最后需要一个换行。直接暴力是0.216,如果加个弱弱的排序优化一下是0.120。#include #include #include #include #define sqr(x) ((x)*(x))typedef struct _Point { double x, ... 阅读全文
posted @ 2013-01-05 17:35 zcube 阅读(148) 评论(0) 推荐(0)
摘要:主要利用题目中的条件,并不需要排序。因为出现的数不超过10000。只需要统计0 - 10000出现数的个数,就可以确定出现数的排名。#include #include #include int main() { int n, q; int que[10005]; int coun... 阅读全文
posted @ 2013-01-04 17:08 zcube 阅读(167) 评论(0) 推荐(0)
摘要:字符串排序。#include #include #include int cmp(const void *a, const void *b) { char *_a = (char *)a; char *_b = (char *)b; return strcmp(_a, _b);}... 阅读全文
posted @ 2013-01-04 16:12 zcube 阅读(149) 评论(0) 推荐(0)
摘要:这道题英文描述太冗余。最后看了有个小哥一句话描述的题意才明白了http://blog.163.com/kakarrot@yeah/blog/static/12011592520106241155854/。其实就是统计两个序列相同列相同数字的个数和不同列相同数字的个数。要注意,两列中任意一个元素如果... 阅读全文
posted @ 2013-01-03 18:24 zcube 阅读(150) 评论(0) 推荐(0)
摘要:这道题让选手模拟相除和取余的过程,由于除数为整型,使得这道题的难度大大减小。要注意在模拟取余和相处的时候,中间的临时数会超过整型范围。 提供一个数据:21474836447 / 2147483647#include #include // 大数字符串str与整型x相除,商赋给strvoid myD... 阅读全文
posted @ 2013-01-03 16:27 zcube 阅读(173) 评论(0) 推荐(0)
摘要:这道题体现了浮点数的优势。即使用64位整数(注意long long要I64d输出),溢出也会变成负数,判断起来比较困难。如果用double类型,即使字符串位数超过百位,同样用sscanf()函数进行处理,却不会变成负数。原因是浮点数可以用指数表示。例如,double的正值取值范围为 4.94065... 阅读全文
posted @ 2013-01-02 14:37 zcube 阅读(179) 评论(0) 推荐(0)
摘要:简单的模拟了下乘法,效率不高。记得以前见过有个模板是4位相乘模拟的。#include #include void add(int sum[], int c[], int n) { int cp = 0; for (int i=0; i<n; i++) { int tmp ... 阅读全文
posted @ 2013-01-01 20:20 zcube 阅读(184) 评论(0) 推荐(0)

1