洛谷 1080 國王遊戲

2021-09-24 20:20:25 字數 1213 閱讀 4193

題目描述

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

國王不希望某乙個大臣獲得特別多的獎賞,所以他想請你幫他重新安排一下隊伍的順序,使得獲得獎賞最多的大臣,所獲獎賞盡可能的少。注意,國王的位置始終在隊伍的最前面。

輸入輸出格式

輸入格式:

第一行包含乙個整數 n,表示大臣的人數。

第二行包含兩個整數 a和 b,之間用乙個空格隔開,分別表示國王左手和右手上的整數。

接下來 n n行,每行包含兩個整數 a 和 b,之間用乙個空格隔開,分別表示每個大臣左手和右手上的整數。

輸出格式:

乙個整數,表示重新排列後的隊伍中獲獎賞最多的大臣所獲得的金幣數。

輸入輸出樣例

輸入樣例#1:

31 1

2 37 4

4 6

輸出樣例#1:

2

說明

【輸入輸出樣例說明】

對於 100%的資料,有 1 ≤ n ≤1,000,0 < a,b < 10000

noip 2012 提高組 第一天 第二題

解釋:貪心演算法,感覺貪心看智商,我真的不行。。看了大佬的分析後得到經驗,以後對於貪心題,可以先拿2-3個例子來分析比較,最後在一般化。

n=int(input())

s=input().split()

s=int(s[0])

t=int(s[1])

a=for i in range(1,n+1):

k=input().split()

a.sort(key=lambda x:x[0]*x[1])

ans=0

for i in range(0,n):

if(s//a[i][1]>ans):

ans=s//a[i][1]

s*=a[i][0]

print(ans)

洛谷 P1080 國王遊戲

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

洛谷P1080 國王遊戲

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

洛谷P1080 國王遊戲

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