description
某核反應堆有兩類事件發生:
高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點;
低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。
假定開始的時候(0微秒)只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生(對於乙個事件,當前存在的所有質點都會撞擊核子),試確定n微秒時高能質點和低能質點的數目。
input
輸入含有一些整數n(0≤n≤33),以微秒為單位,若n為-1表示處理結束。
output
分別輸出n微秒時刻高能質點和低能質點的數量,高能質點與低能質點數量之間以逗號空格分隔。每個輸出佔一行。
sample input
5 2-1
sample output
571, 20911, 4
提示 可以使用long long int對付gnu c++,使用__int64對付vc6
遞推公式:
a[i]=a[i-1]*3
+b[i-1]*2
;b[i]=
a[i-1
]+b[i
-1];
#include
#include
#include
#include
#include
#include
using
namespace std;
intmain
(),b[
34]=
;for
(int i=
1;i<=
33;i++)
int n;
while
(cin>>n)
return0;
}
HDU 2085核反應堆
核反應堆 problem description 某核反應堆有兩類事件發生 高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點 低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。假定開始的時候 0微秒 只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生 對於乙個事件,當...
HDU 2085 核反應堆
解題報告 題目大意,在第0微秒的時候有乙個高能質子,定義有如下反應,當乙個高能質子撞擊核子時,質子被吸收,同時放出3個高能質子和乙個低能質子,如果乙個低能質子撞擊核子的話,可以放出兩個高能質子和乙個低能質子,問在第n微秒的時候一共有多少個高能質子和低能質子。超級簡單dp題,打表就可以了,不打表也行,...
HDU 2085 核反應堆
problem description 某核反應堆有兩類事件發生 高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點 低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。假定開始的時候 0微秒 只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生 對於乙個事件,當前存在的所...