年輪蛋糕JOI2014Final

2022-04-28 18:00:09 字數 2332 閱讀 2328

試題描述

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...