方便自己複習回顧
我在vc++編譯的所以用__int64定義超級大數
2040親和數
#include
intmain()
//求餘相加就行
}for
(int n=
1;nif(sum1==m&&sum2==i)
else
}return0;
}
2041超級樓梯
#include
< stdio.h>
intmain()
;for
(int i =
4; i <=
41;i++
) a[i]
= a[i -1]
+ a[i -2]
;scanf
("%d"
,&n)
;while
(n--
)return0;
}
2042不容易系列之二
#include
intmain()
printf
("%d\n"
,sum1);}
return0;
}
2043密碼
#include
#include
#include
intmain()
elseif(
isupper
(c[i]))
elseif(
isdigit
(c[i]))
else}if
(sum1!=0)
if(sum2!=0)
if(sum3!=0)
if(sum4!=0)
if(n>=
8&&n<=
16&&t>=3)
else
}return0;
}
2044乙隻小蜜蜂…
#include
intmain()
;//數大會溢位
int j,a,b;
for(
int i=
3;i<
50;i++
)scanf
("%d"
,&j)
;while
(j--
)return0;
}
2045不容易系列之(3)—— lele的rpg難題
思路:// n>=4時,考慮前n-1格已經定了情況(合法),由於首尾顏色不同,如果是加1格的話,其顏色只有1種可選,所以如果n格是從n-1格的基礎上加一格而來,那麼塗法數量是相同的,即這種情況f(n)=f(n-1);//考慮前n-2格已經定了情況,n-1取與第1格顏色相同(這個情況不會與前n-1格合法重疊),那麼第n格有2種顏色可選,即這種情況f(n)=f(n-2)*2。綜合這兩種情況得f(n)=f(n-2)*2。
#include
intmain()
;for
(i=3
; i<
50; i++
)while(~
scanf
("%d"
,&n)
)return0;
}
2046題骨牌鋪方格
又是斐波那契數列
#include
intmain()
;int n;
for(
int i=
3;i<=
50;i++
) a[i]
=a[i-1]
+a[i-2]
;while(~
scanf
("%d"
,&n)
)return0;
}
2047阿牛的eof牛肉串
#include
intmain()
;for
(int i=
2;i<
40;i++
)while(~
scanf
("%d"
,&n)
)return0;
}
2048、2049這兩題很相似
2048神、上帝以及老天爺
#include
intmain()
,b[20]=
;for
(i=2
;i<
20;i++
)printf
("%.2lf%%\n"
,a[n-2]
/b[n-2]
*100);
}return0;
}
2049不容易系列之(4)——考新郎
#include
intmain()
,s;for
(i=3
;i<=m;i++
) a[i]
=(i-1)
*(a[i-1]
+a[i-2]
);//把m個人全排錯的可能種數存放在陣列a中,全排錯參見2048
for(i=n-m+
1,j=
1;i<=n;i++
,j++
) b=b*i/j;
//計算n個人當中m個人的選取種數
s=b*a[m]
;printf
("%i64d\n"
,s);
}return0;
}
杭電oj2000 C語言
problem description 輸入三個字元後,按各字元的ascii碼從小到大的順序輸出這三個字元。input 輸入資料有多組,每組佔一行,有三個字元組成,之間無空格。output 對於每組輸入資料,輸出一行,字元中間用乙個空格分開。sample input qwe asd zxcsampl...
杭電oj2001 C語言
題目 problem description 輸入兩點座標 x1,y1 x2,y2 計算並輸出兩點間的距離。input 輸入資料有多組,每組佔一行,由4個實數組成,分別表示x1,y1,x2,y2,資料之間用空格隔開。output 對於每組輸入資料,輸出一行,結果保留兩位小數。sample input...
杭電oj2000 2009 C語言
2000ascii碼排序 include intmain if a c if b c printf c c c n a,b,c return0 2001計算兩點間的距離 include include include intmain return0 2002計算球的體積 include includ...