小b準備出模擬賽。
她把題目按難度分為四等,分值分別為6,7,8,9。
已知小b共出了m道題,共n分。
求小b最少出了多少道6分題。
兩個正整數n,m
乙個數,表示答案。示例1若無解,輸出"jgzjgzjgz"。
複製
34 5複製
1示例2
複製
32 5複製
3示例3
複製
5 1複製
jgzjgzjgz
n,m≤1012這次比賽最坑的就是,最像暴力的題反而不是暴力,最像推公式的題反而暴力可過……(。
本來就是求乙個最小值->x的取值範圍,不知道為什麼我當時總往求解x上想……!真實zz
然後搬一下說的很明白的官方題解:
顯然,有解的充要條件為 6m≤n≤9m 。
若有解:
設有 x(0≤x≤m)道6分題,則剩下的m-x題共n-6x分,
則剩下的題有解的充要條件為 7(m−x)≤n−6x≤9(m−x) ,
解得 7m−n≤x≤(9m−n)/3。
因此答案為max(0,7m-n)。
ac**:
#include #define ll long long
using namespace std;
int main()
else
return 0;
}
2020牛客寒假演算法基礎集訓營6 A 配對
題目描述 現在有正整數集合 a 和 b,每個集合裡有 n 個數,你要建立他們間的一一對映 將每對配對的數字相加可以得到 n 個和,你要做的就是最大化第 k 大的和 1 k n 100,000 輸入的所有數字不超過 1e8 思路 貪心 為嘛我一開始沒想起來 第k大就是第 n k 1 小,讓比它小的盡可...
牛客寒假演算法基礎集訓營6
現在有正整數集合 a 和 b,每個集合裡有 n 個數,你要建立他們間的一一對映,將每對配對的數字相加可以得到 n 個和,你要做的就是最大化第 k 大的和。分別將前k大的數,乙個集合第i小的和另乙個集合第i大的,配對,得出k個數最後最小的那個數就是答案。小 q 新學會了一種魔法,可以對乙個 n行m列 ...
牛客寒假演算法基礎集訓營
首先看到這個題目資料範圍就可以知道這不是乙個可以暴力過的題。所以應該要推乙個結論。我們可以將這個同學的一來一回看成一組,那麼就可以理解為乙個來回中n可以減少n m 1 個人。那麼我們現在要讓所有人都進去,那就是看n m 1 的數量。但是有可能存在一些情況,就是說當你的倒數第二組中的回來的那趟使得n變...