- 博客(57)
- 收藏
- 关注
原创 hdu 1196
题目大意:输入数n,找出其二进制中最小的数(0除外),以10进制输出。2种方法,第一种转化为2进制,找最小,输出。第二种用c语言的位运算符。#include int main(){ int n; while(scanf("%d",&n)!=EOF&&n) { printf("%d\n",n^(n&(n-1))); } return 0;}
2014-04-03 22:20:36 444
原创 hdu 1164
题目大意:把一个数用素数因子因子乘积表示出来。#include #include int pri(int a){ int i=a-1; while(i>1) { if(a%i==0) break; i--; } if(i==1) return 1; else return 0;}int main(){ int num[15],n,i,j;
2014-04-03 21:07:50 414
原创 hdu 1164
题目大意:n各个位数相加,得到m,各个位数相加,直至只有1位,称为根。输入数n,求n^n根。数字很大,找规律吧。#include int main(){ int n,f[18]={9,1,4,9,4,2,9,7,1,9,1,5,9,4,7,9,7,8}; while(scanf("%d",&n)!=EOF&&n) { printf("%d\n",f[n%18]); }
2014-04-03 20:36:15 430
原创 hdu 1018
题目大意:求n!的位数。伟大的数学,伟大的斯特林。斯特林公式:lnN!=NlnN-N+0.5*ln(2N*PI),阶乘位数为log10(N!)取整+1。len=lnN!/ln(10)+1。#include #include #define PI 3.1415926int main(){ int n,t; double m; scanf("%d",&t); whi
2014-04-03 19:07:48 426
原创 hdu 1016
题目大意:输入数n,表示从1到n的数,围成一个圈,第一个数为1,相邻2数相加为素数。输出满足条件的所有情况,输出格式按事例要求。第一次做搜索,做了好长时间,学了不少。#include #include int num[21];//保存第n个位置上的数int jud[21];//jud[n]保存数n是否被使用,使用为1int n;int pri(int a){ int i=
2014-04-03 18:05:49 464
原创 hdu 1003
题目大意:输入数n,表示n组数据。每组数据开始的m表示余下数据数量,在这个序列中,找出1个子序列,使其和最大。输出包括这个和,子序列第一个数位置,子序列最后一个数位置。每个输出之间空一行。不要忘了Case %d:#include int main(){ int n,i,j,sum,max,m,num[100000],start,tstart,end; scanf("%d
2014-04-02 22:18:39 401
原创 hdu 1002
题目大意:求和,数可能很大,输入n表示要处理的数据数目,注意输出格式。第一次做大数,做的挺烂。#include #include int main(){ char s1[1000],s2[1000]; int n1[1000],n2[1000],sum[1000],len1,len2,i,j,max,temp,n; scanf("%d",&n);
2014-04-02 22:09:58 382
原创 hdu 1020
题目大意:输入n,表示n个字符串。每个字符串由A~Z组成,输出每个不同字符,在前面输出个数。#include #include int main(){ char f[10005]; int n,i,num,len; scanf("%d",&n); while(n--) { memset(f,0,sizeof(f)); scanf("%s",f); len=str
2014-04-02 21:22:25 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人