問題描述
實驗室一眾人都非常友好,大家有一天來到了一棟公寓。
這棟公寓非常奇特,所有的房間都在一側,而且所有房間的總開關在外面
每個房間的內的開關都壞掉了。也就是說,住在房間裡的人無法控制自己的開關。
這時候,zwt餓了,想要去偷吃烤冷麵,但是又怕大家發現。所以他跑到外面,想把所有人的房間裡燈全部關掉再去吃烤冷麵。
但是這個總開關非常神奇,他每次會把乙個房間及它之後的所有房間開關全部反轉。
現在你已經知道了房間的數量n和每個房間的開關狀態(1代表開啟,0代表關閉)
請問zwt最少需要操作這個開關幾次才能關閉所有開關?
形式化來說
給定長度為n的01序列,每次可以選取任意整數i,將i~n的所有位取反(即0變成1,1變成0),問最少幾次操作之後可以得到全0序列。
如果你要用getchar(),請注意
windows環境下的換行符為\r\n,linux環境的換行符為\n.
有些資料在windows中生成,而在評測機linux環境下評測。這種情況在字串輸入中非常常見。
輸入描述
第一行n(1<=n<=15,000,000)代表房間的數目
第二行長度為n的01序列s,其中表示第個房間的狀態,(0為開燈,1為關燈)
輸出描述
輸出最少的操作次數
樣例輸入
6011100
樣例輸出
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
const
int n =
1e7+
5e6+10;
char s[n]
;int
main()
for(
int i=
1; i)printf
("%d"
, cnt)
;return0;
}
一道水題,需要注意的是,不能乙個接乙個的輸入字元或者數字,那樣會超時 個人發展 2 0
現在是到處都在喊 2.0 的口號,剝去繁華的外表,很多還是值得我們去思考。有幸參加了csdn主辦的sd 2.0大會,每個主題都想聽聽,可嘆分身乏術。聽著聽著也會陷入自己的思考,如此百家爭鳴,百花齊放 才會是自己的方向呢?仔細看一遍所有的講師 除去個別年輕有為的後生外,多半是些老傢伙,我這次特地挑了平...
定時傳送20
獲取郵件標題。param packinglistnum pl.no 箱單號 return string 郵件標題。private string getmailsubject string packinglistnum 獲取郵件正文。param packinglistnum pl.no 箱單號 ret...
(20)狀態模式
定義 當 個物件內在狀態改變時允許其改變行為,這個物件看起來像改變了其類。型別 行為型模式 類圖 狀態模式結構 state 抽象狀態角色,介面或抽象類,負責物件狀態定義,並且封裝環境角色以實現狀態切換。concretestate 具體狀態角色,每乙個具體狀態必須完成兩個職責 本狀態的行為管理以及趨向...