問題描述
卡城著名的格林堡博物館是加拿大西部最大的博物館,展品涵蓋了藝術、文化史以及礦物學。如今乙個全新的展區正在被布置,它是專門為你這樣傑出的程式猿(媛)打造的。不幸的是,由於空間不足,博物館打算建造一棟新的建築來重新安置這個展區。
新的建築的尺寸和容量將不同於原始的建築,但是所有樓層的設計都是直角多邊形。乙個直角多邊形是內角均為90°或270°的多邊形。如果我們記90°角為r(right)、270°角為o(obtuse),那麼乙個只包含r和o的字串能夠粗略的表示乙個直角多邊形。比如,乙個矩形(圖形1)就是最簡單的直角多邊形,它能夠用rrrr來描述(內角按逆時針排列,起始角任意)。同樣地,乙個十字形直角多邊形(圖形2)能夠用rrorrorrorro、rorrorrorror或者orrorrorrorr來描述。這些序列被稱為角序列。
當然,乙個角序列不一定能完全對應乙個形狀的多邊形,因為它沒有說明邊長。並且乙個角序列不一定能描述乙個合法的直角多邊形(比如rrror)。
為了把事情搞得更麻煩,博物館並不接受所有的樓層設計。乙個博物館儲存了許多價值連城的物品,它們必須要被看守著。出於對成本的考慮,乙個樓層最多只能有乙個保安。所以只有滿足以下要求的樓層設計能被接受:存在乙個地點使得乙個保安能監視到整個樓層。因此乙個角序列能被接受,當且僅當它描述了乙個能夠被接受的多邊形。注意圖形2的十字形直角多邊形能夠被站在中心的保安完全監視,所以它是被接受的,因此角序列rrorrorrorro是被接受的,即使它也能夠描述其他不能被乙個保安監視的多邊形。
請幫助新建築的設計師確定有多少給定長度的能夠被接受的角序列。
輸入格式
輸入檔案包含多組測試資料。每組資料一行,包含乙個正整數 l (1 <= l <= 1000),表示給定的角序列長度。
輸入檔案以僅包含0的一行結束。
輸出格式
對於每一組資料,輸出一行,包含測試資料編號(從1開始),之後為給定長度的被接受的角序列的個數。具體格式參考樣例輸出。
樣例輸入4
6 0樣例輸出
case 1: 1
case 2: 6
資料規模和約定
按題目描述所示。
該題剛看的時候沒有思路,看了題解之後才發現通過對能夠接受的角序列的條件限制加以分析,結合角間關係,即可得出答案應為
c((l+ 4)/2,4) + c((l+ 2)/2,4);
要注意思維轉換呀,不能被莫須有的困難嚇到啦
**如下;
#includeusing namespace std;
int main()
{ int n;int i=0;unsigned long long int ans=0;
while(cin>>n)
{ if(n==0) break;
else
{
i++;
cout<
DL RBM訓練演算法
在學習hinton的stack autoencoder演算法 reducing the dimensionality of data with neural networks 之前需要了解什麼是rbm,現在就我學習的情況,查詢的資料 大部分來自部落格 簡單介紹一下rbm。當然,這裡面還有同組實驗的同...
演算法訓練 C Calculations
問題描述 c 語言和c 語言非常相似,然而c 的程式有時會出現意想不到的結果。比如像這樣的算術表示式 表示式 基本式 表示式 基本式 表示式 基本式 基本式 增量 係數 增量 增量 a a 係數 0 1 2 1000 如 5 a 3 a a 是合法的c 表示式。計算這樣的表示式的值的方法 首先是每個...
演算法訓練 暗戀
演算法訓練 暗戀 時間限制 1.0s 記憶體限制 256.0mb 問題描述 同在乙個高中,他卻不敢去找她,雖然在別人看來,那是再簡單不過的事。暗戀,是他唯一能做的事。他只能在每天課間操的時候,望望她的位置,看看她傾心的動作,就夠了。操場上的彩磚啊,你們的位置,就是他們能夠站立的地方,他倆的關係就像磚...