東東和他的女朋友(幻想的)去壽司店吃晚餐(在夢中),他發現了乙個有趣的事情,這家餐廳提供的 n 個的壽司被連續的放置在桌子上 (有序),東東可以選擇一段連續的壽司來吃
東東想吃鰻魚,但是東妹想吃金槍魚。核 平 起 見,他們想選擇一段連續的壽司(這段壽司必須滿足金槍魚的數量等於鰻魚的數量,且前一半全是一種,後一半全是另外一種)我們用1代表鰻魚,2代表金槍魚。
比如,[2,2,2,1,1,1]這段序列是合法的,[1,2,1,2,1,2]是非法的。因為它不滿足第二個要求。
東東希望你能幫助他找到最長的一段合法壽司,以便自己能吃飽。
input
輸入:output第一行:乙個整數n(2≤n≤100000),壽司序列的長度。
第二行:n個整數(每個整數不是1就是2,意義如上所述)
輸出:乙個整數(代表東東可以選擇的最長的一段連續的且合法的壽司)examples
input用cnt1記錄1出現的次數,cnt2記錄2出現的次數,c1,c2記錄1與2是否出現過,xf記錄上次出現的數,當c1、c2均為1且xf與x不同時計算長度mx=max(mx,2*min(cnt1,cnt2)),還有計算長度的條件為當i=n-1時同樣用此公式,計算完後要將x的相應引數初始化72 2 2 1 1 2 2
output
4input
61 2 1 2 1 2
output
2input
92 2 1 1 1 2 2 2 2
output
6
#include
using
namespace std;
intmain()
if(c1==
0&&x==2)
if(c1==1)
if(c2==
1&&xf!=x)
else}if
(c2==
1&&xf==x)}if
(c2==1)
}if(i==n-1)
xf=x;
} cout<}
week11作業D 必做題11 4
樣例 input 72 2 2 1 1 2 2 output 4input 61 2 1 2 1 2 output 2input 92 2 1 1 1 2 2 2 2 output 6這題用滑窗的思想解決。具體細節和注釋都在 裡。include using namespace std int a 1...
Week11 作業 D 必做題11 4
一 題目描述 題面 東東和他的女朋友 幻想的 去壽司店吃晚餐 在夢中 他發現了乙個有趣的事情,這家餐廳提供的 n 個的壽司被連續的放置在桌子上 有序 東東可以選擇一段連續的壽司來吃 東東想吃鰻魚,但是東妹想吃金槍魚。核 平 起 見,他們想選擇一段連續的壽司 這段壽司必須滿足金槍魚的數量等於鰻魚的數量...
Week11作業 D 必做題11 4 模擬
東東和他的女朋友 幻想的 去壽司店吃晚餐 在夢中 他發現了乙個有趣的事情,這家餐廳提供的 n 個的壽司被連續的放置在桌子上 有序 東東可以選擇一段連續的壽司來吃 東東想吃鰻魚,但是東妹想吃金槍魚。核 平 起 見,他們想選擇一段連續的壽司 這段壽司必須滿足金槍魚的數量等於鰻魚的數量,且前一半全是一種,...