由題意所得列出式子為fib(k)=a * b - c; 根據式子,求出fib(k) 對應 的值,然後遍歷fib陣列,從而找到k值並輸出。
#include
using
namespace std;
typedef
long
long ll;
const
int n =
30000010
;ll fib[n]
;inline
void
init
(ll &aa)
aa = a;
}int main ()}
return0;
}
在n個裝備中有m個類別,每個裝備有四個屬性,由於資料範圍較小,想要根據所給式子選出裝備,得到最大dmg值,可以直接運用 dfs 演算法一一計算得來。
#include
using
namespace std;
typedef
long
long ll;
const
int n =55;
int class_nums[n]
;int unzero[n]
;int lab[n]
[n][4]
;//n類裝備的第n個裝備下的a、b、c、d值
int n;
//裝備數量
int m;
//裝備型別數
ll res;
void
dfs(
int pos,
int a,
int b,
int c,
int d)if(
!class_nums[pos]
)for
(int i =
1; i <= class_nums[pos]
; i++
)dfs
(pos +
1, a + lab[pos]
[i][0]
, b + lab[pos]
[i][1]
, c + lab[pos]
[i][2]
, d + lab[pos]
[i][3]
);}int main ()}
pos = m +1;
//dfs結束標誌
for(i = m; i >
0; i --
) res =0;
dfs(1,
100,
100,
100,
100)
; cout << res << endl;
}}
杭電第二場 A Total Eclipse
題意 給定乙個無向圖,每個點有乙個點權 有這樣的操作 選定乙個連通塊 每個點的權大於0 將所有節點的權值減一 求最少的操作次數,使得所有點的權為0 題解 並查集 依照題意,貪心地選最大的連通快,每當有點的權值減為0的時候可能會使得連通塊斷裂成多個,我們要維護這個過程 但是這樣做會tle 那我們逆向進...
2019杭電多校第二場
今天也是一條鹹魚orz 場上三題 e,j,k e everything is generated in equal probability 題解 乙個長度為n的排列的逆序期望為c n,2 2 因為每一對下標的貢獻都是1 2.然後設dp i dp i dp i 為長度為i ii的隨機排列的culcul...
2019杭電多校第二場
給定乙個 n 從 1,n 中等概率取出乙個數,再等概率生成乙個 n 的全排列,再計算這個全排列的函式值,求這個函式值的期望。函式表達為輸入乙個全排列,計算其逆序數,再等概率取出乙個子串行 可以是空,可以是原序列 遞迴計算該子串行的函式值,累加返回。include using namespace st...