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

2021-10-23 10:25:08 字數 557 閱讀 4815

b題:傳送門:link

題意:有n* m個口罩,需要要把它們裝到一些箱子裡面,要使箱子數盡可能少,並且滿足兩個條件,這些箱子可以分成m組,每組n個口罩,或者分成n組,每組m個口罩。

思路:分配方案其實就是乙個迭代的過程。為了使得箱子數最少,每個箱子就應該盡可能的多裝。每次優先裝min(n,m)個箱子,每個箱子裝min(n,m)。裝了這些之後,就還剩下(max(m,n)-min(n,m))*min(n,m)個,對於剩下的這些口罩我們可以繼續重複上述操作。

#include

using

namespace std;

typedef

long

long ll;

intmain()

m -= n;

}printf

("%d\n"

,ans.

size()

);for(i=

0;isize()

;i++

)printf

("\n");

}return0;

}

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

可以看成把乙個m n m nm n的長方形劃成若干個寬為1 11的矩形,使得存在兩種分割方法能恰好填滿長和寬。然後只要不斷在矩形裡劃分正方形就行了。include using namespace std typedef long long ll intmain for int i 1 i n i a...

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

難度係數 dd fake news 講題人所謂的 暖暖的簽到題 完全平方和,只要特判1和21即可即可 includeusing namespace std typedef long long ll define t ll t scanf lld t while t intmain else b ma...

2020牛客暑期多校訓練營(第七場)題解DBH

題目傳送門 提前打了一下表,發現好像就1和24可以,試了一下a了 附上大佬的證明 如何證明 1 2 n 為平方數的解只有 n 1 或 n 24?include intmain return0 題目傳送門 mask allocation 對於n m個口罩,將其分成可以組合成n個m個m個n,只能序列內疊...