日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ZOJ2091(贪心)

發布時間:2024/8/22 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ZOJ2091(贪心) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

解題思路:剛讀完這道題后,不懂什么意思,感覺挺奇怪的。看了幾遍題后,還是無從下手。通過動筆畫畫與測試數據結果對住了,覺得應該是這個意思,也確實是的。題目意思的正確理解應當是,從任意位置開始一直取到末尾,然后求其平均值,把這n個平均值中取最大的一個輸出。也是按照貪心原則求解問題。
????? 如Sample:
????? 10
????? 2 10 4 6 5 10 10 2 3 2
????? 取
???????? <1> (2 + 10 + 4 + 6 + 5 + 10 + 10 + 2 + 3 + 2 ) / 10
???????? <2>(10 + 4 + 6 + 5 + 10 + 10 + 2 + 3 + 2) / 9
???????? <3>( 4 + 6 + 5 + 10 + 10 + 2 + 3 + 2) / 8
???????? <4>( 6 + 5 + 10 + 10 + 2 + 3 + 2) / 7
???????? <5>(5 + 10 + 10 + 2 + 3 + 2) / 6
???????? <6>(10 + 10 + 2 + 3 + 2) / 5
???????? <7>(10 + 2 + 3 + 2) / 4
???????? <8>(2 + 3 + 2) / 3
???????? <9>( 3 + 2) / 2
???????? <10>2 / 1
????? 在這10個數里取一個最大值輸出即可。

? 注意:這題竟然沒有給數據量大小,確實挺難為人的。開始我設了1005的上限,檢查無誤提交竟然是Segmentation Fault,讓我看了半天不知道是什么錯誤,以前從沒見過。我猜是不是數據量設的太小了,就改為10005的上限,結果終于AC了。不過最關鍵的還是題意要搞懂!

View Code ?1?#include<iostream>
?2?#include<cstdio>
?3?using?namespace?std;
?4?
?5?#define?Max?10005
?6?double?a[Max],b[Max];
?7?
?8?int?main()
?9?{
10?????int?i,n;
11?????while(cin>>n)
12?????{
13?????????for(i=0;i<n;i++)
14?????????????cin>>a[i];
15?????????double?sum=0.0;
16?????????for(i=n-1;i>=0;i--)
17?????????{
18?????????????sum+=a[i];
19?????????????b[i]=sum/(n-i);
20?????????}
21?????????double?max=0;
22?????????for(i=0;i<n;i++)
23?????????????if(max<b[i])?max=b[i];
24?????????printf("%.6f\n",max);
25?????}
26?????return?0;
27?}

?

轉載于:https://www.cnblogs.com/yueshuqiao/archive/2012/02/03/2337225.html

總結

以上是生活随笔為你收集整理的ZOJ2091(贪心)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。