CodeForces 732D 二分 貪心

2021-07-29 22:26:47 字數 802 閱讀 1910

思路:二分列舉答案,在限定時間內判斷這個時間能否完成。貪心策略是盡量晚的安排每個考試。

ac**:

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;

#pragma comment(linker, "/stack:1024000000,1024000000")

#define eps 1e-10

#define inf 0x3f3f3f3f

#define pi pairtypedef long long ll;

const int maxn = 1e5 + 5;

int n, m, sum;

int d[maxn], a[maxn];

int vis[maxn];

bool check(int lim)

else w = max(0, w-1);

} if(cnt < m || w > 0) return false;

return true;

}int main()

int x = 0, y = n+1;

while(x < y)

if(y <= n) printf("%d\n", y);

else printf("-1\n");

} return 0;

}

如有不當之處歡迎指出!

CodeForces1311D 思維 二分

給你三個整數a,b,c 每一次操作你可以讓三個其中之一 1 或者 1,你可以執行無限次這樣的操作,但是你不能將他們變成非正數。你需要找到最小運算元以至於b是a的倍數,c是b的倍數。t組資料,1 t 100 每組三個數a,b,c。1 a b c 1e4 根據資料範圍,可以想到去列舉其中的乙個數,然後c...

Codeforces 1132D 二分答案 堆

傳送門 二分答案,考慮如何判定 可以用貪心的方法,每次找最快沒電的電腦,在沒電前1單位時間給它充電 正確性顯然 實現上可以維護乙個堆,儲存每個電腦電用完的時刻,每次從堆頂取出最小的乙個給它充電。設二分值為mid,對於每個電腦記錄它的充電次數num i 則沒電的時間就是 lfloor frac rfl...

Codeforces 590 D 二維樹狀陣列

題意 給乙個10 5之內的字串 小寫字母 時限2s 輸入n,有n個操作 n 10 5 當操作是1的時候,輸入位置x和改變的字母 當操作是2的時候,輸入區間l和r,有多少不同的字母 思路二維樹狀陣列 include include include include include define lowb...