算法竞赛入门经典
文章平均质量分 58
dxy612
这个作者很懒,什么都没留下…
展开
-
6174问题
<br />/*--------6174问题-----------<br />输入一个n位数,把所有数字从大到小排序得到a,从小到大得到b,然后用a-b替换原来这个数<br />并且继续操作。1234 、4321-1234=3087、8730-378=8352、8532-2358=6174 <br />样例输入:1234<br />样例输出:1234->3087->8352->6074->6174<br />--------------------------------------------------原创 2010-06-05 22:53:00 · 3235 阅读 · 0 评论 -
一个整数倒序输出(2种方法)
<br />#include<iostream>#include<string>using namespace std;int main(){int x,t,m=0;int i;char s[10]; cin>>x;t=x;while(t>0){ m=m*10+t%10 ; t=t/10; } cout<<m<<endl; /*法2:用sprintf()函数*/ sprintf(s,"%d",x);原创 2010-06-05 22:55:00 · 4728 阅读 · 0 评论 -
阶乘的精确值
<br />#include<iostream>#include<string>using namespace std;const int maxn=3000;int f[maxn];int main(){int n;int i,j; cin>>n; memset(f,0,sizeof(f)); f[0]=1; for(i=2;i<=n;i++) { int c=0; for( j=0;j<maxn;j+原创 2010-06-05 22:59:00 · 743 阅读 · 1 评论 -
cantor 数表
<br />Cantor表<br /> 把分子和分母均小于108的分数按下面的办法排成一个数表。<br />1/2→1/2 1/3→1/4 1/5 ……<br /> ↙ ↗ ↙ ↗<br />2/1 2/2 2/3 2/4 2/5 ……<br /> ↓↗ ↙ ↗<br />3/1 3/2 3/3 3/4 3/5 ……<br /> ↙ ↗<br />4/1 4/2 4/3 4/4 4/5 ……<br /> ↓↗<br />5/1 5/2 ……<原创 2010-06-11 12:20:00 · 1521 阅读 · 0 评论 -
因子和阶乘
<br />/*输入正整数n(2<=n<=100),把阶乘n!=1x2x3x...xn分解成素因子相乘的形式,从小大输出各个素数(2,3,5,...)的指数*例如825=3x5^2x11应表示成(0,1,2,0,1),表示分别有0、1、2、0、1个2、3、5、7、11*/#include<stdio.h>#include<string.h>int is_prime(int n){ for(int i=2;i*i<=n;i++) { if(n%i==0) return原创 2010-06-17 18:06:00 · 539 阅读 · 0 评论