牛客 演算法白嫖1 國王的遊戲(貪心 高精度)

2021-10-06 22:40:10 字數 891 閱讀 3474

______ab_______

設#為ab前面的人左手乘積

假設a在前

a:#/ra  (1)b:#*la/rb(2)

假設b在前

a:#*lb/ra (3) b:#/rb (4)、

如果獲得最大的大臣就在a和b之間

我們規定a在前面 好

就有max(1,2)<=max(3,4)

發現(1)<=(3)

(4)<=(2)

要想max(1,2)<=max(3,4)成立

只需滿足

(3)>=(2)

就有#*la/rb<=#*lb/ra

就有la*ra<=lb*rb

高精度可直接套用模板

#includeusing namespace std;

const int n=1005;

typedef vectorv;

pairpa[n];

v cheng(v a, int b)//乘法

return c;

}v chu(v a, int b)//除法

reverse(c.begin(), c.end());

while (c.size() > 1 && c.back() == 0) c.pop_back();

return c;

}bool bi(v a, v b)//比較

void out(v res)//輸出

sort(pa+1,pa+1+n);//排序

v lc(1,1);//累l乘c

v ans(1,0);//答案

for(int i=0;i<=n;i++)

lc=cheng(lc,a);

}out(ans);

}

國王的遊戲(貪心 高精度)

恰逢 h 國國慶,國王邀請 n 位大臣來玩乙個有獎遊戲。首先,他讓每個大臣在左 右手上面分別寫下乙個整數,國王自己也在左 右手上各寫乙個整數。然後,讓這 n 位大臣排成一排,國王站在隊伍的最前面。排好隊後,所有的大臣都會獲得國王獎賞的若干金幣,每位大臣獲得的金幣數分別是 排在該大臣前面的所有人的左手...

牛客 牛牛的揹包 貪心演算法

時間限制 c c 1秒,其他語言2秒 空間限制 c c 524288k,其他語言1048576k 64bit io format lld 題目描述 牛牛有最多50個物品,每個物品有乙個type標號,並且有乙個taste值,現在要求選擇若干個物品放進揹包使得x y最大,x為選擇的不同type的數量,y...

有趣的演算法問題12 跳躍遊戲1(貪心演算法)

所有演算法均是用c 編寫 所有題目均是來自計蒜客 我好想回爐重造。給定乙個非負整數陣列,假定你的初始位置為陣列第乙個下標。陣列中的每個元素代表你在那個位置能夠跳躍的最大長度。請確認你是否能夠跳躍到陣列的最後乙個下標。例如 a 2,3,1,1,4 能夠跳躍到最後乙個下標,輸出true a 3,2,1,...