2012年7月26日

最大公约数

摘要: /辗转相除的简单函数形式,当其中一个为0时,则跳出while循环,此时x+y就为最小公约数/int slyar(int x,int y){ while(x>y?(x%=y):(y%=x)); return x+y;}/辗转相除:/#include"stdio.h"int main(... 阅读全文

posted @ 2012-07-26 15:27 Slege 阅读(130) 评论(0) 推荐(0) 编辑

多边形(n边形)面积计算公式hdu2036

摘要: 利用多边形(n边形)面积计算公式:S=0.5 * ( (x0*y1-x1*y0) + (x1*y2-x2*y1) + ... + (xn*y0-x0*yn) ), 其中点(x0,y0), (x1, y1), ... , (xn,,yn)为多边形上按逆时针顺序的顶点((x0,y0)与(xn,yn... 阅读全文

posted @ 2012-07-26 15:25 Slege 阅读(713) 评论(0) 推荐(0) 编辑

数论之数的因子个数

摘要: 1. N的因子个数 条件:给定任意一个一个正整数N 要求:求其因子的个数 首先给出结论:对于任意的整型N,分解质因数得到N= P1^x1 * P2^x2* …… * Pn^xn; 则N的因子个数M为 M=(x1+1) * (x2+1) * …… *(xn+1); 证明过程: 首先 举... 阅读全文

posted @ 2012-07-26 15:24 Slege 阅读(930) 评论(0) 推荐(0) 编辑

进制转换

摘要: int r_to_ten(int s[])//r进制转换为10进制{ int i,d=0; for(i=0;s[i];i++) d=d*R+str[i]-'0'; printf("%d\n",d);}int ten_to_r(int n)//10进制转换为r进制{ int k=0;k=0; c... 阅读全文

posted @ 2012-07-26 15:23 Slege 阅读(95) 评论(0) 推荐(0) 编辑

迭代法

摘要: hdu 3809; 一,迭代法 的基本概念: 迭代法事一种常用算法设计方法。迭代式一个不断用新值取代变量的旧值,或由旧值递推出变量的新值的过程。迭代机制需要以下一些要素: ①迭代表达式; ②迭代变量; ③迭代初值; ④迭代终止条件。 当一个问题的求解过程能够由一个初值使用一个... 阅读全文

posted @ 2012-07-26 15:22 Slege 阅读(603) 评论(0) 推荐(0) 编辑

90=2*3*3*5。分解质因数

摘要: 程序分析:对n分解质因数,应先找到一个最小的质因数,然后按下面的步骤: 1,如果这个质数刚好等于n,则说明分解结束,直接输出就可以 2,如果n不等于这个质数,且能被n整除,则输出这个质数 3,如果不能被整除,则i++; #includeint main(){ int n,i; whi... 阅读全文

posted @ 2012-07-26 15:17 Slege 阅读(176) 评论(0) 推荐(0) 编辑

打印菱形

摘要: #include"stdio.h"int main(){ int n,i,j,k; while(scanf("%d",&n)!=EOF) { for(i=0;i<=n-1;i++)//行数为n { for(j=0;j<=n-2-i;j++)//控制空格数, printf(" ");... 阅读全文

posted @ 2012-07-26 15:16 Slege 阅读(100) 评论(0) 推荐(0) 编辑

单链表!!

摘要: #include"stdio.h"#include"stdlib.h"struct linknode{ int date; struct linknode *next;};struct linknode *creat()//建立链表{ struct linknode *head,*tail,*t... 阅读全文

posted @ 2012-07-26 15:15 Slege 阅读(105) 评论(0) 推荐(0) 编辑

背包

摘要: P01: 01背包问题 这是最基本的背包问题,每个物品最多只能放一次 题目 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择... 阅读全文

posted @ 2012-07-26 15:14 Slege 阅读(169) 评论(0) 推荐(0) 编辑

整数划分 以hoj1402为例

摘要: hoj1402整数划分问题 整数划分是一个经典的问题。希望这道题会对你的组合数学的解题能力有所帮助。 Input 每组输入是两个整数n和k。(1 i时 = dp[i-j][j]+dp[i][j-1] i>=j时 i记录的是该要分的数,j表示最大数不超过j的划分数,当j比i还大时当... 阅读全文

posted @ 2012-07-26 15:09 Slege 阅读(126) 评论(0) 推荐(0) 编辑

导航