0076-小升初1:生日蛋糕
生活随笔
收集整理的這篇文章主要介紹了
0076-小升初1:生日蛋糕
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
| 小升初1:生日蛋糕 |
| 難度級別:B; 運行時間限制:1000ms; 運行空間限制:256000KB; 代碼長度限制:2000000B |
| 試題描述 |
| 一個中學生(在線測評系統的系統管理員)過生日了,他邀請了許多人來參加她的生日聚會,生日聚會中最重要的一件事情就是吃蛋糕了。一個中學生共邀請了n個人,這些人的心里都想好了自己要多少克蛋糕。如果給他少了,他就會郁悶(沒有吃到足夠多的蛋糕)。如果給他多了,他也會郁悶(因為他不能浪費,需要把這些蛋糕都吃了,撐著了會不舒服)。一個人的郁悶指數為他想要的蛋糕克數與他實際得到的蛋糕克數之差(記住:一定是大數減小數)。一個中學生想指定一個人想要的蛋糕克數作為標準,給每個人都是這么多蛋糕。聚會是件高興的事情,同學們郁悶指數之和越小越好,現在他需要知道同學們的郁悶指數最低值是多少,請你編寫程序幫他實現。? |
| 輸入 |
| 第一行為正整數n,表示參加聚會總共有n位同學。第二行為n個正整數,表示每個人想要得到的蛋糕克數(<=1000)。 |
| 輸出 |
| 輸出所有人的郁悶指數之和的最小值 |
| 輸入示例 |
| 5 100?300?200?100?300 |
| 輸出示例 |
| 400 |
| 其他說明 |
| 數據范圍及樣例說明:1?<?n?<?100000,樣例方案為選?200?作為標準?。 |
分析
純循環題終于過的差不多了,下面咱們來了解一種極其需要和循環搭配使用的數據存儲方式——數組。
數組是用于儲存多個相同類型數據的集合,不過,這么高深的定義對咱們來說還是……算了吧……
使用方法在此不一一贅述,下面了解一個新的東西。
系統排序,又稱智能排序。一般指通過一行來完成選擇排序十幾行的排序,同時要快于部分排序算法。
所以再返回來,這道題只需要讀入每個人需求量的數組,然后排序,接著取下標中間的那個數,與其它數作差取絕對值就行了。
代碼
#include<bits/stdc++.h> using namespace std; int n,a[100005],ans; int main() {scanf("%d",&n);for(int i=0;i<n;i++) scanf("%d",&a[i]);//讀入數組。sort(a,a+n);//系統排序。for(int i=0;i<n;i++) ans+=abs(a[i]-a[n/2]);//取下標正中間的數并累加其與其他每個人需求量差的絕對值。printf("%d",ans);return 0; }轉載于:https://www.cnblogs.com/DARTH-VADER-EMPIRE/p/9799291.html
總結
以上是生活随笔為你收集整理的0076-小升初1:生日蛋糕的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php长篇特点,《细说PHP》特色
- 下一篇: Spring事务管理嵌套事务详解 : 同