解題報告:題目大意,在第0微秒的時候有乙個高能質子,定義有如下反應,當乙個高能質子撞擊核子時,質子被吸收,同時放出3個高能質子和乙個低能質子,如果乙個低能質子撞擊核子的話,可以放出兩個高能質子和乙個低能質子,問在第n微秒的時候一共有多少個高能質子和低能質子。超級簡單dp題,打表就可以了,不打表也行,假如定義乙個陣列high[34]表示高能質子的個數,和乙個陣列low[34]表示低能質子的個數,那麼遞推的公式就是:
high[i] = 3*high[i-1] + low[i-1];
low[i] = high[i-1] + low[i-1];
本題要注意的就是資料範圍可能比較大,所以要__int64(交c++);
1 #include2 #include3view codeint times[1000005];4
5int
main()
13int max = 0;14
for(int i = 0;i<=1000000;++i)
15if(times[i]>times[max])
16 max =i;
17 printf("
%d\n
",max);18}
19return0;
20}
2122
HDU 2085核反應堆
核反應堆 problem description 某核反應堆有兩類事件發生 高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點 低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。假定開始的時候 0微秒 只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生 對於乙個事件,當...
HDU 2085 核反應堆
problem description 某核反應堆有兩類事件發生 高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點 低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。假定開始的時候 0微秒 只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生 對於乙個事件,當前存在的所...
HDU2085 核反應堆 遞推
某核反應堆有兩類事件發生 高能質點碰擊核子時,質點被吸收,放出3個高能質點和1個低能質點 低能質點碰擊核子時,質點被吸收,放出2個高能質點和1個低能質點。假定開始的時候 0微秒 只有乙個高能質點射入核反應堆,每一微秒引起乙個事件發生 對於乙個事件,當前存在的所有質點都會撞擊核子 試確定n微秒時高能質...