ACM
文章平均质量分 72
「已注销」
SYSU
展开
-
UVaoj 340 Master-Mind Hints
MasterMind is a game for two players. One of them, Designer, selects a secret code. The other, Breaker, tries to break it. A code is no more than a row of colored dots. At the beginning of a game, the原创 2009-12-19 00:19:00 · 1423 阅读 · 0 评论 -
POJ 1590 Palindromes
DescriptionA regular palindrome is a string of numbers or letters that is the same forward as backward. For example, the string "ABCDEDCBA" is a palindrome because it is the same when the string is原创 2009-12-18 22:00:00 · 1324 阅读 · 0 评论 -
【转】POJ 题目分类
1、 排序1423, 1694, 1723, 1727, 1763, 1788, 1828, 1838, 1840, 2201, 2376, 2377, 2380, 1318, 1877, 1928, 1971, 1974, 1990, 2001, 2002, 2092, 2379,1002(需要字符处理,排序用快排即可) 1007(稳定的排序) 2159(题意较难懂) 2231237转载 2009-12-18 12:49:00 · 684 阅读 · 0 评论 -
C语言库函数——qsort使用详解
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。 qsort包含在头文件中,此函数根据你给的比较条件进行快速排序,通过指针移动实现排序。排序之后的结果仍然放在原数组中。使用qsort函数必须自己写一个比较函数。函数原型:void qsort ( void * base, size_t num, size_t size, i转载 2009-12-17 21:03:00 · 852 阅读 · 0 评论 -
POJ 1002 487-3279
DescriptionBusinesses like to have memorable telephone numbers. One way to make a telephone number memorable is to have it spell a memorable word or phrase. For example, you can call the University原创 2009-12-20 23:36:00 · 1227 阅读 · 0 评论 -
POJ分类
POJ上的一些水题(可用来练手和增加自信)(poj3299,poj2159,poj2739,poj1083,poj2262,poj1503,poj3006,poj2255,poj3094)初期:一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推.转载 2010-02-19 02:22:00 · 1428 阅读 · 0 评论 -
POJ 1017 Packets(贪心)
//用贪心算法,从最大的装起,//5*5->1*1; //4*4->2*2->1*1;//3*3分3种情况//模4后剩1,剩2,剩3//剩1的最多可再装5个2×2,再补1×1//剩2的最多可装4个2×2,再补1×1//剩3的只能装多1个2×2,再补1×1#includeusing namespace std;int main(){ int a[7],原创 2010-02-17 01:51:00 · 628 阅读 · 0 评论 -
POJ 2388 Who's in the Middle(排序)
//快排水题,练习STL的QSORT#includeusing namespace std;int arr[10010];int cmp(const void *a, const void *b){ int *A = (int*)a; int *B = (int*)b; return *A - *B;}int main(){ int n; cin原创 2010-02-19 16:07:00 · 677 阅读 · 0 评论 -
排序算法全集
排序算法是一种基本并且常用的算法。由于实际工作中处理的数量巨大,所以排序算法 对算法本身的速度要求很高。 而一般我们所谓的算法的性能主要是指算法的复杂度,一般用O方法来表示。在后面我将 给出详细的说明。 对于排序的算法我想先做一点简单的介绍,也是给这篇文章理一个提纲。 我将按照算法的复杂度,从简单到难来分析算法。 第一部分是简单排序算法,后面你将看到他们的共同点是算法复杂度为O(N*N)(因为没有转载 2009-12-11 00:06:00 · 776 阅读 · 0 评论 -
POJ 1328 Radar Installation(贪心)
//贪心,注意贪心的方式,一开始我用从左往右对每一个点所对应的最右圆心坐标,接着逐步右移判断,看了POJ上的大牛讨论,知道这个算法是错误的,于是进行了改正//正确的贪心算法应当是求出每个点它所满足的圆心范围,接着将问题转化为多区间选点问题。//即在N个闭区间上取尽量少的点,使得每个区间内都至少有一个点(不同区间内含的点可以是同一个)#include#includeusing n原创 2010-02-17 04:12:00 · 1005 阅读 · 0 评论 -
POJ 2081 Recaman's Sequence(模拟/暴力)
//纯粹暴力AC,必须记住大数组一定要开成全局变量,因为函数里面的定义的变量都是放在栈堆中,太大会溢出即stack overflow#includeusing namespace std;int arr[500001];bool used[3012500];int main(){ int n; arr[0] = 0; memset(used,0,sizeof(u原创 2010-02-12 00:49:00 · 1132 阅读 · 0 评论 -
POJ 1028 Web Navigation
DescriptionStandard web browsers contain features to move backward and forward among the pages recently visited. One way to implement these features is to use two stacks to keep track of the pages t原创 2009-12-20 01:52:00 · 1289 阅读 · 0 评论 -
【转】背包九讲
P01: 0-1背包问题 题目 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。 用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程便是:f[i][v]=max转载 2010-03-03 22:08:00 · 895 阅读 · 0 评论 -
POJ 3299 Humidex(简单公式递推)
//纯粹公式递推,注意题目要求,任意知2求1//别递推错就OK了#include#include#includeusing namespace std;const double Exp = 2.718281828;char a,b;double aa,bb;double var[100];double T,H,D;double e,h;void print(){ cout > a) { if(a == 'E') break; cin >原创 2010-06-13 19:33:00 · 894 阅读 · 0 评论 -
POJ 2719 Faulty Odomete(公式递推)
//公式递推//列表找规律,比如读取各位为8,那么知道有1个被跳过,读取十位为3, 那么算从1到30共有多少位被跳过了,读取百位为5,计算从1到500共有多少位被跳过了//然后分类讨论,读取的这个位数>=5时是1种情况,<5是另一种情况#include#includeusing namespace std;int calculate(int n){ int an原创 2010-05-21 14:46:00 · 969 阅读 · 1 评论 -
POJ 2245 Lotto(组合问题)
//递归方法解决组合问题。//打印出C(n,6)的组合//没注意输出格式,PE了2次……每两个case有一个空行,最后一个case没有#include#includeusing namespace std;int num[14];int rcd[14];int n,cnt;void select_combination(int current,int p)//递原创 2010-05-09 16:29:00 · 1201 阅读 · 1 评论 -
POJ 2590 Steps(简单数列递推)
//寻找公式,思路是先列举每一跳所能跳的最远距离,然后发现规律,再注意下y-x=0时候的判断即可//结果得出数列//0,1,2,4,6,9,12,16,20,25,30.......//0,0+1,1+1,2+2,4+2,6+3,9+3,12+4,16+4.....#includeusing namespace std;int main(){ int t,x,y,t原创 2010-05-07 15:54:00 · 1436 阅读 · 0 评论 -
POJ 2231 Moo Volume(排序+简单公式推导)
//数学公式推导//先排序,会容易推导写//A1 A2 A3 A4 A5//1 2 3 4 5//D1 D2 D3 D4 D5 (含义很显然) //0 1 2 3 4//1 0 1 2 3//2 1 0原创 2010-04-30 15:42:00 · 2668 阅读 · 4 评论 -
POJ 1007 DNA sorting(统计逆序对数+归并排序)
//统计逆序对数,用归并排序来统计 O(nlgn) 应该比枚举要快,不过在这题中应该不会体现,反而浪费了空间,不过算了,当练归并排序#include#include#define INF 2147483647using namespace std;struct str{ char source[100];//保存原始序列 char s[100]; int mis原创 2010-04-30 10:12:00 · 2180 阅读 · 0 评论 -
Sicily 1154 Easy Sort(排序)
//简单快速排序,原来在Sicily上用qsort要添加algorithm的,难怪校赛的时候用next_permutation出错,原来是没添加真是可恶!经验不够啊!!//POJ跟Sicily 差别这么大……#include#include#includeusing namespace std;int arr[1000001];int cmp_int(const voi原创 2010-04-18 10:55:00 · 2147 阅读 · 0 评论 -
Sicily 1198 Substring
//字典排序,一开始以为很水,随便快排完组合下就好了,谁知道有特殊情况,如c,ca,应该是输出cac而不是c,ca//因此用填充末位的方法处理特殊情况,如c,ca,cda,cc四个字符串,将他们转化成ccccc...(1),caaaaaa....(2),cdaaaaaa....(3),cccccc....(2)//括号中记录他们的原始长度,这样做的原因是为了能用快速排序方便地将字符串按字典原创 2010-04-18 13:28:00 · 3292 阅读 · 14 评论 -
POJ 1042 Gone Fishing(贪心)
还可以用数据结构堆优化,还有待学习!//贪心法#include using namespace std;struct lake{ int f;//当前鱼的数量 int d;//减少量 int t;//步行所花时间}la[26];int fish[26];//记录当前状态每个湖所含鱼的数量int sum[26];//以不同湖为结束点可以钓到的最大鱼数原创 2010-03-16 00:36:00 · 839 阅读 · 0 评论 -
POJ 1013 Counterfeit Dollar
DescriptionSally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are true silver dollars; one coin is counterfeit even though its color and size make it indistinguishabl原创 2010-01-02 02:45:00 · 1189 阅读 · 0 评论 -
POJ 2299 Ultra-QuickSort(归并排序)
//求逆序数对#includeusing namespace std;const int MAXN = 500001;long long int A[MAXN],T[MAXN],cnt;void merge_sort(long long int *A,int x,int y,long long int *T,long long int &cnt)//归并排序{ if(y原创 2010-03-07 20:21:00 · 1198 阅读 · 2 评论 -
POJ 2260 Error Correction(模拟)
//简单题,纯粹模拟就能通过#includeusing namespace std;bool check(int n,bool arr[100][100]){ int sum; for(int i = 0;i < n;++i) { sum = 0; for(int j = 0;j < n;++j) { sum += arr[i][j];原创 2010-02-10 23:55:00 · 808 阅读 · 0 评论 -
判断素数的函数
基础数论知识:一个整数不能整除他的平方数之内的整数就是素数#include #include #include using namespace std;int isprime(int x){ int i,m; assert(x >= 0); //利用宏来限制非法输入 if(x == 1) return 0; m = floor(sqrt(x) +原创 2009-12-12 23:17:00 · 1847 阅读 · 0 评论 -
HDU 1016 Prime Ring Problem 素数环
Problem DescriptionA ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.N原创 2010-01-22 17:58:00 · 6600 阅读 · 2 评论 -
HDU 1061 Rightmost Digit
Problem DescriptionGiven a positive integer N, you should output the most right digit of N^N. InputThe input contains several test cases. The first line of the input is a single integer原创 2009-11-27 00:14:00 · 1955 阅读 · 1 评论 -
HDU 1040 As Easy As A+B 排序
Problem DescriptionThese days, I am thinking about a question, how can I get a problem as easy as A+B? It is fairly difficulty to do such a thing. Of course, I got it after many waking nights.Giv原创 2009-11-26 01:33:00 · 2307 阅读 · 0 评论 -
HDU1018 Big Number
Problem DescriptionIn many applications very large integers numbers are required. Some of these applications are using keys for secure transmission of data, encryption, etc. In this problem you are原创 2009-11-26 10:48:00 · 727 阅读 · 0 评论 -
HDU 1037 Keep on Truckin'
很简单的一道题,JUST COMPARE~别想太复杂就OK拉~ Problem DescriptionBoudreaux and Thibodeaux are on the road again . . ."Boudreaux, we have to get this shipment of mudbugs to Baton Rouge by tonight!""Dont worry原创 2009-11-26 10:35:00 · 2269 阅读 · 0 评论 -
HDU 1049 Climbing Worm
水题一道~ Problem DescriptionAn inch worm is at the bottom of a well n inches deep. It has enough energy to climb u inches every minute, but then has to rest a minute before climbing again. During原创 2009-11-26 01:26:00 · 1118 阅读 · 0 评论 -
POJ 2386 Lake Counting (DFS)
DescriptionDue to recent rains, water has pooled in various places in Farmer Johns field, which is represented by a rectangle of N x M (1 Given a diagram of Farmer Johns field, determine how man原创 2010-01-20 21:40:00 · 3289 阅读 · 1 评论 -
POJ 2346 Lucky tickets
DescriptionThe public transport administration of Ekaterinburg is anxious about the fact that passengers dont like to pay for passage doing their best to avoid the fee. All the measures that had原创 2010-01-20 01:45:00 · 1430 阅读 · 0 评论 -
POJ 1111 Image Perimeters
DescriptionTechnicians in a pathology lab analyze digitized images of slides. Objects on a slide are selected for analysis by a mouse click on the object. The perimeter of the boundary of an object原创 2010-01-23 02:32:00 · 993 阅读 · 0 评论 -
递归排列
一、生成1~n的组合排列void permutation(int n,int A[],int cur){ if(cur == n) //递归边界,若在A中填满N个数,则构成一个完整排列,将其输出 { for(int i = 0;i < n;++i) cout << A[i]; cout << endl; } else for(int i = 1原创 2010-01-22 00:14:00 · 790 阅读 · 0 评论 -
HDU 1013 Digital Roots
Problem DescriptionThe digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulti原创 2009-11-26 10:50:00 · 1076 阅读 · 0 评论 -
POJ 1163 The Triangle & POJ 3176 Cow Bowling(DP动态规划)
买一送一的动态规划题目,让我开心地AC两次!唯一改变的就是数组的大小。DescriptionThe cows dont use actual bowling balls when they go bowling. They each take a number (in the range 0..99), though, and line up in a standard bowling-原创 2010-01-20 17:26:00 · 1130 阅读 · 0 评论 -
POJ 2033 Alphacode
DescriptionAlice and Bob need to send secret messages to each other and are discussing ways to encode their messages: Alice: "Lets just use a very simple code: Well assign A the code word 1,原创 2010-01-20 16:46:00 · 1338 阅读 · 2 评论 -
HDU 1019 Least Common Multiple
Problem DescriptionThe least common multiple (LCM) of a set of positive integers is the smallest positive integer which is divisible by all the numbers in the set. For example, the LCM of 5, 7 and 1原创 2009-12-12 18:35:00 · 1403 阅读 · 0 评论