NOIP2012 提高組 day1 國王遊戲

2021-09-25 07:41:33 字數 1081 閱讀 4845

由公式推導出:

當大臣按照 a*b由小到大排列時,會使得答案取到最小,算出每個人的金幣數比較即可

要用高精度乘法和除法,否則只有60分。

#include

.h>

using namespace std;

typedef long long ll;

const int n

=10050,m

=4005

;struct nodea[n]

;ll n;

ll sum[m]

,ans[m]

,c[m];

ll len1=

1,len2=

1,len3=1;

ll read()

while

(ch<=

'9'&&ch>=

'0')

return sum*f;

}bool comp

(node a,node b)

void

cheng

(ll x)

while

(tmp!=0)

}void

chu(ll x)

}while

(!ans[len2])}

void

compare()

for(int i=len2;i>=

1;i--

)return;}

}int main()

sort

(a+1

,a+n+

1,comp)

;for

(int i=

1;i<=n;i++

)for

(int j=len3;j>=

1;j--

) cout<

;return0;

}

NOIP2012 提高組 day1 國王遊戲

題解這道題是一道貪心題,大家只需要找到貪心策略是左手與右手的乘積,然後從小到大sort一下就ok了 不過大家有一點需要小小注意一下,需要打乙個高精度,要不然就只有60了 include define maxn 10005 using namespace std int a 10005 n,len,x...

NOIP2012提高組Day1T2 國王遊戲

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

NOIP2012提高組 借教室

這個題目是個一眼題啊,維護一下一段區間內教室數的最小值,線段樹搞就可以了,lazy標記打一打,來乙個訂單先詢問再區間減,codevs上是可以過的,只不過嘛。debug大神。include include include include includeconst int maxn 1e6,maxnod...