2020牛客暑期多校訓練營(第四場)FBH補題報告

2021-10-08 08:43:52 字數 2493 閱讀 5117

分情況討論的方法

#include

#include

using

namespace std;

intmain()

else

else

ans =1;

}}else

else}}

if(ans)

else

}return0;

}

大佬們的思路:

abcd構成乙個梯形,梯形具有對角線之和大於兩腰之和的特點;

又或者 設ad與bc交點為o,形成oac,obd兩個三角形,三角形兩邊之和大於第三邊。

所以,只需要判斷ad + bc是否大於ac + bd即可。

#include

#include

using

namespace std;

intmain()

else cout <<

"ab//dc"

<< endl;

}return0;

}

算式每一次遞迴,都會乘一次c,

每一次遞迴的選擇都是選擇最大的,而值的增大**於多個c的相乘。

所以,我們只需要讓遞迴的層次最多即可。

所以,對於n,分解質因數,所有質因數的冪次求和就是遞迴次數 num。

最終結果就是c的num次方。

每一次在牛客的除錯機上寫篩或者唯一分解都會出段錯誤,真是醉了

#include

#include

using

namespace std;

const

int maxn =

1e6+50;

const

long

long mod =

1e9+7;

int zhi[maxn/2]

=;int vis[maxn]=;

int z =0;

void

oulashai()

for(

int j =

0; j < z && zhi[j]

*i < maxn -

5; j++)}

}long

long

hanshu

(long

long a)

t++;}

if(a >

1) ans++

;return ans;

}int

quickpower

(int x,

int y)

//快速冪加取模

x = x * x % mod;

// x 乘二次方,下次使用

y = y >>1;

// y 右移一位,相當於除以 2

}return result % mod;

// 返回結果

}int

main()

return0;

}

從大到小遍歷質數,遍歷n以內所有質數p的倍數,選擇其中沒有匹配過的,兩兩匹配。

如果p的倍數為奇數個,就把2倍的留下(待到列舉質數為2的時候再使用)

如果為偶數個,那麼兩兩匹配即可。

#include

#include

using

namespace std;

const

int maxn =

2e5+50;

int zhi[maxn/2]

=;int vis[maxn]=;

int z =0;

void

oulashai()

for(

long

long j =

1; j <= z && zhi[j]

* i < maxn; j++)}

}int flag[maxn]

;int

main()

//匹配標記

vector<

int> a,b;

int ans =0;

int pos =

upper_bound

(zhi +

1, zhi +

1+ z, n /2+

1)- zhi -1;

// n/2 以內的最大質因數zhi[pos]

for(

int i = pos; i >=

1; i--)}

int num = v.

size()

;if(num >1)

}for

(int j =

0; j < t.

size()

; j+=2

)}else}}

} cout << ans << endl;

for(

int i =

0; i < ans; i++)}

return0;

}

2020牛客暑期多校訓練營(第四場)

傳送門 打表發現 f n,c c n可以分解為多少個質因數 用尤拉篩打出可以分解為多少個質因數 includeusing namespace std typedef long long ll const ll inf 0x3f3f3f3f3f3f3f3f const double pi acos 1...

2020牛客暑期多校訓練營(第四場)

參考部落格 注意的幾個點 include using namespace std typedef long long ll typedef int128 lll define print i cout debug i endl define close ios sync with stdio 0 c...

2020牛客暑期多校訓練營 第四場

開始堇業,把之前欠的債補上。這場只出了兩個水題。題目看起來太複雜了。仔細分析以後其實是除掉最小質因數之後的那個數的次數 1。一開始質因數從1列舉哇了一發。我是弱智。include using namespace std typedef long long ll const int mod 1e9 7...