試題描述
joi 君馬上要和妹妹 joi 子和 joi 美一起吃小吃。今天的小吃是他們三個人都很喜歡的年輪蛋糕。
年輪蛋糕是像下圖一樣呈圓筒形的蛋糕。為了把蛋糕分給三個人,joi 君必須沿著半徑方向切 3 刀,從而把蛋糕分成三塊。然而,由於年輪蛋糕硬得像實木一樣,要讓刀切進去並不簡單。因此,這個年輪蛋糕上事先準備了 n 個切口,而 joi 君只能在有切口的位置下刀。切口按順時針順序編號為 1到 n,對於 1≤i≤n−1,第 i 個切口和第 i+1個切口之間部分的大小是 ai。第 n 個切口和第 1個切口之間部分的大小是 an 。
圖 1:乙個年輪蛋糕的例子,n=6,a1=1,a2=5,a3=4,a4=5,a5=2,a6=4
妹控的 joi 君在把蛋糕切成 3 塊之後,自己選走最小的一塊吃掉,把剩下兩塊分給兩個妹妹。而另一方面,joi 君太喜歡年輪蛋糕了,只要能吃到的時候就會想吃很多很多。試求:最小塊的大小不超過多少。
樣例說明 1
圖 2:從第 1,3,5個切口下刀時是最優解(即圖中粗實線位置)。
輸入從標準輸入讀入以下內容:
• 第 1 行有乙個整數 n,表示年輪蛋糕上有 n 個切口;
• 接下來有 n 行,第 i(1≤i≤n)行有乙個整數 ai,表示第 i 個切口和第 i+1 個切口之間部分(當 i=n 時即為第 n 個和第 1 個之間部分)的大小。
輸出輸出到標準輸出,僅一行乙個整數,表示當把年輪蛋糕切成 3 塊之後最小塊大小的最大值。
輸入示例
輸入樣例 161
5452
4輸入樣例 2301
3444
133019
37720
122446
9443117
2033
1848
2319
3124
5043
15輸出示例
輸出樣例 1
6輸出樣例 2
213國慶day2 t1
考場很sb的寫了乙個二分套二分,被卡飛了,所以說我們來看一看是怎麼寫的
首先是二分答案 (從0到sum/3)
然後我們用兩個二分來求出右邊剛好大於二分出來的值的下標
然後判斷是否可行
**fo常好寫,然後來看怎麼優化,首先是每次只要求出來就return
然後我們已知在列舉左端點的時候,與之對應的右端點是遞增的
所以我們可以記錄上一次求出的下標作為本次二分的左邊界
時間複雜度差不多是o(nlogsum*常數)
大概要跑700多
然後最重要的就是,開long long
下面給出**:
#include#include#include
#include
#include
#include
#include
using
namespace
std;
inline
intrd()
inline
void write(long
long
x)int
n;int a[100006
];long
long sum[200006
];long
long l=0,r=3
;inline
bool check(long
long
x)
set=num;
la1=num;
ll=set+1,rr=i+n-1
;
if(la2) ll=la2;
if(sum[set]-sum[i-1]continue
;
while(ll<=rr)
if(sum[num]-sum[set]continue
; la2=rr;
if(sum[i+n-1]-sum[num]continue
; f=1
;
break
; }
returnf;}
intmain()
for(register int i=n+1;i<=n*2;i++) sum[i]=sum[i-1]+(long
long)a[i-n];
r/=3
;
long
long ans=0
;
while(l<=r)
write(ans);
return0;
}
LOJ2758 年輪蛋糕
joi 君馬上要和妹妹 joi 子和 joi 美一起吃小吃。今天的小吃是他們三個人都很喜歡的年輪蛋糕。年輪蛋糕是像下圖一樣呈圓筒形的蛋糕。為了把蛋糕分給三個人,joi 君必須沿著半徑方向切 3 刀,從而把蛋糕分成三塊。然而,由於年輪蛋糕硬得像實木一樣,要讓刀切進去並不簡單。因此,這個年輪蛋糕上事先準...
MapReduce之Reduce端Join實現
mapreduce之helloword很簡單,但是要想繼續自己來寫,還有很多坑要注意。這不,咱們這回來個reduce端join實現。網上一搜,有很多,我們要來個自己的吧。廢話少說,先上傳一些資料到hdfs上。input pd.csv 假設這個是產品名稱檔案 input sale.csv 假設這個是銷...
ArcEngine dbf表之間連線Join
arcengine dbf表之間連線join 上乙個部落格寫了要素圖層屬性表與.dbf之間的連線join,但是若想兩個.dbf表之間連線,再用那種方法就不行了,因此這裡呼叫gp工具實現.dbf表之間的連線join。gp工具實在是強大,能解決你的問題,但是卻不能讓你知道到底如何實現的,連線之後開啟.d...