春秋戰國時期,趙國地大物博,資源非常豐富,人民安居樂業。但許多國家對它虎視眈眈,准備聯合起來對趙國發起一場戰爭。
顯然,面對多個國家的部隊去作戰,趙國的兵力明顯處於劣勢。戰斗力是決定戰爭成敗的關鍵因素,一般來說,一支部隊的戰斗力與部隊的兵力成正比。但當把一支部隊分成若干個作戰隊伍時,這個部隊的戰斗力就會大大的增強。
一支部隊的戰斗力是可以通過以下兩個規則計算出來的:
1.若一支作戰隊伍的兵力為N,則這支作戰隊伍的戰斗力為N;
2.若將一支部隊分為若干個作戰隊伍,則這支部隊的總戰斗力為這些作戰隊伍戰斗力的乘積。
比如:一支部隊的兵力為5時的戰斗力分析如下:
情況
作戰安排
總的戰斗力
1
1,1,1,1,1(共分為5個作戰隊伍)
1*1*1*1*1=1
2
1,1,1,2 (共分為4個作戰隊伍)
1*1*1*2=2
3
1,2,2 (共分為3個作戰隊伍)
1*2*2=4
4
1,1,3 (共分為3個作戰隊伍)
1*1*3=3
5
2,3 (共分為2個作戰隊伍)
2*3=6
6
1,4 (共分為2個作戰隊伍)
1*4=4
7
5 (共分為1個作戰隊伍)
5=5
2
5
4
6
4
AC代碼:
#include#include #include using namespace std; int ans[205]; int multiply(int x) { for(int up=0, i=0; i<200; i++) { up = ans[i] * x + up; ans[i] = up % 10; up /= 10; } } int main() { int N; scanf(%d, &N); while(N--) { memset(ans, 0, sizeof(ans)); ans[0]=1; int a; scanf(%d, &a); int n = a/3, i; if(a%3 == 1) n--; for(i=0; i =0;i--) if(ans[i]) break; for(; i>0; i--) printf(%d, ans[i]); printf(%d , ans[0]); } return 0; }