杭電多校round2 The Oculus

2021-10-08 11:40:34 字數 919 閱讀 6718

讓我們定義fibonacci序列f1,f2,…為f1=1,f2=2,fi=fi−1+fi−2(i≥3)。

眾所周知,每個正整數x都有其獨特的fibonacci表示(b1,b2,…,bn),因此:

·b1×f1+b2×f2+⋯+bn×fn=x。

·bn=1,對於每個i(1≤i輸入的第一行包含單個整數t(1≤t≤10000),即測試用例的數量。

對於每種情況,輸入的第一行包含a的fibonacci表示,第二行包含b的fibonacci表示,第三行包含修改後的c的fibonacci表示。

每行以乙個整數n開頭,表示fibonacci表示的長度,後跟n個整數b1、b2、…、bn,表示每一位的值。

保證:·1≤| a |,| b |≤1000000。

·2≤| c |≤| a |+| b |+1。

·∑| a |,∑| b |≤500萬。

對於每個測試用例,輸出一行包含乙個整數k的值。

這題就尷尬,花裡胡哨的想了半天結果直接暴力就過了。啊這

#include#define ll long long

using namespace std;

const int n=3e6+10,m=4e5+10;

const int inf=0x3f3f3f3f;

const int mod=1e9+7;

ll t,f[n];

int main()

scanf("%d",&n);

for(int i=1;i<=n;i++)

scanf("%d",&n);

for(int i=1;i<=n;i++)

a*=b;

int i;

for(i=1;f[i]+c!=a;i++);

printf("%d\n",i); }

}

2020杭電多校

hdu 6836 對於一張圖,每個生成樹的權值為所有邊按位與的結果,求生成樹期望權值。樸素解法 暴力求出每乙個生成樹,累積權值和,然後除生成樹總數。int型別只有31位,既然是與的結果,對於每一條生成樹所有的邊該位都應該是1,按位列舉每一位,求出該位為1的生成樹權值大小,將結果累積到答案裡。incl...

杭電多校2020 2 Lead of Wisdom

題意 n件物品,每種物品有乙個種類ti 四個屬性 ai bi ci di 每個種類最多選一件物品,求 四個屬性分別求和 再與100相加 最後 乘積 思路 dfs 種類i物品數量不超過50 跳過沒有的種類 沒過 include include include include include inclu...

Tetrahedron(2020杭電多校)

題意 給你直角四面體的三邊a,b,c,三者兩兩垂直,問a,b,c從 1,n 隨機挑選,求三者交點到底面的距離的平方的逆元。直角四面體有條結論是1 h2 1 a2 1 b2 1 c2 然而比賽的時候沒想到怎麼算期望,捂臉。演算法 e 1 h2 e 1 a2 e 1 b2 e 1 c2 3 e 1 a2...