洛谷 1372 又是畢業季I

2021-08-20 10:26:01 字數 683 閱讀 1537

「叮鈴鈴鈴」,隨著高考最後一科結考鈴聲的敲響,三年青春時光頓時凝固於此刻。畢業的欣喜怎敵那離別的不捨,憧憬著未來仍毋忘逝去的歌。1000多個日夜的歡笑和淚水,全凝聚在畢業晚會上,相信,這一定是一生最難忘的時刻!

為了把畢業晚會辦得更好,老師想要挑出默契程度最大的k個人參與畢業晚會彩排。可是如何挑呢?老師列出全班同學的號數1,2,……,n,並且相信k個人的默契程度便是他們的最大公約數(這不是迷信哦~)。這可難為了他,請你幫幫忙吧!

ps:乙個數的最大公約數即本身。

輸入格式:

兩個空格分開的正整數n和k。(n>=k>=1)

輸出格式:

乙個整數,為最大的默契值。

思路:感謝討論區的大佬,讓我在這道題上找到了最優解答方法

首先這道題的意思就是在 n 個人裡選出 k 個人,並使他們的公約數最大。

我們都知道,兩個數若要使它們的公約數最大,則兩個數是成倍數關係,最大公約數就是這兩個數中較小的那個。

則 k 個數字,若要找到最大公約數, k 個數字最好是 x, 2x, 3x, …… x * k, 所以 x * k 越靠近 n ,最大公約數越大。

所以只要 將  輸出n / k  (c語言能自動取整)的值便可。

具體**:

#include

int main()

洛谷 P1372 又是畢業季I

題目背景 叮鈴鈴鈴 隨著高考最後一科結考鈴聲的敲響,三年青春時光頓時凝固於此刻。畢業的欣喜怎敵那離別的不捨,憧憬著未來仍毋忘逝去的歌。1000多個日夜的歡笑和淚水,全凝聚在畢業晚會上,相信,這一定是一生最難忘的時刻!題目描述 為了把畢業晚會辦得更好,老師想要挑出默契程度最大的k個人參與畢業晚會彩排。...

洛谷 P1372 又是畢業季I 題解

題目背景 叮鈴鈴鈴 隨著高考最後一科結考鈴聲的敲響,三年青春時光頓時凝固於此刻。畢業的欣喜怎敵那離別的不捨,憧憬著未來仍毋忘逝去的歌。1000多個日夜的歡笑和淚水,全凝聚在畢業晚會上,相信,這一定是一生最難忘的時刻!題目描述 為了把畢業晚會辦得更好,老師想要挑出默契程度最大的k個人參與畢業晚會彩排。...

洛谷P1372 又是畢業季I 數學

題意 在1 n中找到k個數,使得這k個數的最大公因數最大 思路,題解 因為兩個數成倍數關係時,它們的最大公因數是兩數中的較小數,也就是相對來說最大公因數較大 返回題目,這k個數其實就是 x 1,x 2.x k,及x的1 k倍,但必須保證x k小於n,在上述條件下,能知道,符合條件的最大的x就是答案,...