国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

【BZOJ 1088】【SCOI 2005】掃雷mine

2019-11-08 02:09:37
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

Description

相信大家都玩過(guò)掃雷的游戲。那是在一個(gè)n*m的矩陣?yán)锩嬗幸恍├祝愀鶕?jù)一些信息找出雷來(lái)。萬(wàn)圣節(jié)到了,“余”人國(guó)流行起了一種簡(jiǎn)單的掃雷游戲,這個(gè)游戲規(guī)則和掃雷一樣,如果某個(gè)格子沒(méi)有雷,那么它里面的數(shù)字表示和它8連通的格子里面雷的數(shù)目。現(xiàn)在棋盤是n×2的,第一列里面某些格子是雷,而第二列沒(méi)有雷。 由于第一列的雷可能有多種方案滿足第二列的數(shù)的限制,你的任務(wù)即根據(jù)第二列的信息確定第一列雷有多少種擺放方案。

Input

第一行為N,第二行有N個(gè)數(shù),依次為第二列的格子中的數(shù)。(1<= N <= 10000)

Output

一個(gè)數(shù),即第一列中雷的擺放方案數(shù)。

Sample Input

2 1 1

Sample Output

2

題解

由于每個(gè)格子可由前兩個(gè)推出來(lái), 所以簡(jiǎn)單討論第一個(gè)格子和第二個(gè)格子即可,并判斷符不符合。

代碼

#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define N 10010int a[N],f[N];int n,ans;bool jud(){ for(int i = 2;i <= n;i++) { f[i+1] = a[i] - f[i] - f[i-1]; if(f[i+1] < 0) return 0; } if(a[n] != f[n] + f[n-1]) return 0; return 1;}int main(){ scanf("%d",&n); for(int i = 1;i <= n;i++) scanf("%d",&a[i]); ans = 0; if(a[1] == 0) ans += jud(); else if(a[1] == 1)//分類討論 { f[1] = 1; ans += jud(); memset(f,0,sizeof(f)); f[2] = 1; ans += jud(); } else { f[1] = f[2] = 1;ans += jud(); }
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 新绛县| 盐亭县| 策勒县| 皋兰县| 平南县| 合阳县| 临邑县| 托里县| 巨鹿县| 三都| 西青区| 泰州市| 嵊泗县| 扎赉特旗| 黑龙江省| 定襄县| 东乡族自治县| 务川| 康定县| 甘德县| 炉霍县| 胶南市| 崇州市| 乌兰浩特市| 册亨县| 新蔡县| 富阳市| 会昌县| 恩平市| 舟曲县| 嘉禾县| 嘉祥县| 榆社县| 凤台县| 怀远县| 新丰县| 陵川县| 崇仁县| 盘山县| 闽侯县| 舒城县|