hdu5878 列舉,打表

2022-02-20 03:22:24 字數 570 閱讀 7286

題意:到一行輸入t,表示下面有t組資料,然後下面t行每行輸入乙個數n;

定義x==2^a*3^b*5^c*7^d(a, b, c, d為自然數,x不大於1e+9);

要求對於每乙個n輸出》=n的最小x;

思路:由於x比較大,可以先打個表;

依次列舉a,b,c,d將所有不大於1e+9的x存到陣列a中,再用;lower_bound()找一下即可;

**:

1 #include2

#define maxn 10000

3#define max 1000000000

4#define eps 1e-6

5#define ll long long

6using

namespace

std;78

ll a[maxn];910

void get_number(void) //

***打表,將所有不大於1e+9的x存陣列a中

1124}25

}26}27

}2829int main(void)30

42return0;

43 }

hdu 1692 列舉 剪枝

題意 給你一些井的資訊,井中原有的水,當井中的水滿足一定量後會被破壞並且這些水全部流入下乙個井中,用多少能量能直接破壞這個井。然後問要想破壞第n口井至少要多少能量。解題思路 這題首先是要找到從哪口井開始破壞,因為要破壞第n口井,要麼直接破壞n,要麼n之前有連續的幾口井一同被破壞,如果中間出現了乙個不...

HDU3721 列舉 最長路

題意 給你一顆n個節點n 1條邊的樹,每條邊都有乙個權值,現在讓你任意移動一條邊然後把這條邊連線到任意兩個點上,最後問你怎樣移動才能使樹上相距最遠的兩個點距離最小。思路 先求出樹的最長路,然後列舉移動最長路上的所有邊,移走這條邊後,原樹必定分為不連線的兩顆子樹,分別求這兩顆子樹的最長路,然後分別找到...

完數(hdu1406)列舉

problem description 完數的定義 如果乙個大於1的正整數的所有因子之和等於它的本身,則稱這個數是完數,比如6,28都是完數 6 1 2 3 28 1 2 4 7 14。本題的任務是判斷兩個正整數之間完數的個數。input 輸入資料報含多行,第一行是乙個正整數n,表示測試例項的個數,...