【水题】【SCOI 2005】【bzoj 1088】扫雷Mine

bzoj1088: [SCOI2005]扫雷Mine 题解 1088: [SCOI2005]扫雷Mine Description   相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图:... 阅读详情

1088: [SCOI2005]扫雷Mine

Time Limit: 10 Sec  Memory Limit: 162 MB
Submit: 2180  Solved: 1272

Description

相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二列的信息确定第一列雷有多少种摆放方案。

Input

第一行为N,第二行有N个数,依次为第二列的格子中的数。(1<= N <= 10000)

Output

一个数,即第一列中雷的摆放方案数。

Sample Input

2
1 1

Sample Output

2

题解:

在lcomyn的指导下发现了这一水题。。
一开始想的是dp,后来惊讶地发现前面的知道了后面的就能算出来了,于是直接暴力就好了。

Code:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;

int n,ans,a[10010],b[10010]; 

int in(){
    int x=0; char ch=getchar();
    while (ch<'0' || ch>'9') ch=getchar();
    while (ch>='0' && ch<='9') x=x*10+ch-'0',ch=getchar();
    return x;
}

bool judge(){
    for (int i=2; i<n; i++){
        int k=a[i]-b[i-1]-b[i];
        if (k<0 || k>1)
            return false;
        else if (!k) b[i+1]=0;
        else b[i+1]=1;
    }
    int k=a[n]-b[n-1]-b[n];
    if (!k) return true;
    return false;
}

void work(){
    ans=0;
    if (!a[1]){
        if (judge()) ans++;
    }
    else if (a[1]==1){
        b[1]=1;
        if (judge()) ans++;
        b[1]=0,b[2]=1;
        if (judge()) ans++;
    }
    else if (a[1]==2){
        b[1]=b[2]=1;
        if (judge()) ans++;
    }
}

int main(){
    n=in();
    for (int i=1; i<=n; i++){
        a[i]=in();
        if (((i==1 || i==n) && a[i]>2) || a[i]>3){
            ans=0; break;
        }
    }

    work(); printf("%d\n",ans);
    return 0;
}
【乐企文件生成工程】乐企文件生成支持所有特定要素类型发票 【代码】【乐企文件】乐企文件生成最新更新!!! 阅读详情

相关推荐

使用GEOquery包下载原始数据

使用GEOquery包下载原始数据

m0_75172651的博客 1894

[BZOJ] 1088: [SCOI2005]扫雷Mine

只有两列,知道第一个是否放雷就可以推出剩下的了,判断合法即可。 复杂度O(n) #include<iostream> #include<cstdio> using namespace std; inline int rd(){ int ret=0,f=1;char c; while(c=getchar(),!isdigit(c))f...

weixin_34392435的博客 117

基于FPGA的示波器设计

ADC 、DAC、FPGA、LCD液晶、示波器

FDL_AQ的博客 1万+

BZOJ 1088(mine)

1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 659  Solved: 386 [Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷

nike0good |Oier&ACMer | 熟能生巧 1275

【WorkBuddy专栏43】如何利用WorkBuddy开发一个PC网站(上)——环境选型、设计编码到部署上线

【WorkBuddy专栏43】如何利用WorkBuddy开发一个PC网站(上)——环境选型、设计编码到部署上线

AI人人懂 2257

c#【保姆级教程】基于System.Text.Json 支持多态类型序列化! 手把手教你实现一个通用的 PolymorphicJsonConverter!

我们需要自己实现一个继承自的转换器,在序列化时记录具体类型,在反序列化时根据类型标识还原成正确的子类对象。public abstract class WorkStepBase { /* 抽象方法等 */ }public class Person : WorkStepBase { /* 实现 */ }public class Product : WorkStepBase { /* 实现 */ }特性说明✅ 自动发现子类无需手动维护类型列表,自动扫描程序集✅ 类名映射。

一个编程的同学 425

BZOJ[1088]扫雷MINE

1088: [SCOI2005]扫雷MineTime Limit: 10 Sec Memory Limit: 162 MB Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它8连通的格子里面雷的数目

LJH_KOQI的博客 1000

无人机:DJI Matrice 600 Pro_(8).DJI_Matrice_600_Pro_负载能力

在一些高级应用场景中,可能需要自定义开发负载设备。

zhubeibei168的博客 1341

bzoj 1088(递推)

传送门 题解:由于对于合法情况,格子里的数很小,所以可以直接枚举第一格,然后线性递推,最后check更新答案。复杂度O(k*n),k为小常数。 P.S.水到都不好意思叫它dp了。。。#include<bits/stdc++.h> using namespace std; const int MAXN=1e4+2; int n,a[MAXN],b[MAXN],ans=0; int main() {

KGV093的博客 542

芯片ATE测试PAT(Part Average Testing)学习总结-20250916

文章摘要:零件平均测试(PAT)是半导体制造中基于统计学的质量控制方法,分为静态和动态两种类型。静态PAT通过预先设定的固定限值(每6-8批次更新)筛选异常芯片,计算采用稳健平均值和四分位间距。动态PAT则根据实时数据调整限值,能更精确识别异常而不误判合格芯片。两种方法均采用"均值±6倍标准差"的计算公式,但动态PAT具有更好的适应性和准确性。该方法通过统计分析提高了芯片产品的质量和可靠性。

歌颂苦难的行为是无耻的; 1191

YOLOv13改进策略【Backbone/轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块

本文记录的是。StarNet设计简洁,没有复杂的设计和精细调整的超参数,仅是一个 4 阶段的分层架构。并且其中能够在低维空间计算的同时考虑极高维的特征这一特性,进而提高模型精度。本文在替换骨干网络中配置了原论文中的starnet_s1starnet_s2starnet_s3和starnet_s4七种模型,以满足不同的需求。

Limiiiing的博客 671

bzoj1088 扫雷

Description   相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图:由于第一列的雷可能有多种方案满足第二列的数的限制,你的...

dfssbqyrq96616258的博客 206

OpenClaw Windows 安装指南

好的,我来一步一步带你在 Windows 上安装 OpenClaw。

m0_60605453的博客 551

【BZOJ 1088】 [SCOI2005]扫雷Mine

模拟水题~

Regina8023 1267

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Bzoj 1088: [SCOI2005]扫雷Mine (DP)

Bzoj 1088: [SCOI2005]扫雷Mine 怒写一发,算不上DP的游戏题 知道了前\(i-1\)项,第\(i\)项会被第二列的第\(i-1\)得知 设\(f[i]\)为第一列的第\(i\)行位置是否有雷,有雷的话,\(f[i] = 1\),无雷\(f[i] = 0\) \(a[i]\)就是题目读入的东西. 那么转移方程就是\(f[i] = a[i - 1] - f[i - 1...

dieloupi0136的博客 155

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

BZOJ 1088: [SCOI2005]扫雷Mine【模拟】

1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec Memory Limit: 162 MB 【题目描述】   相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字...

aiweiluan5095的博客 200

[bzoj1088][SCOI2005]扫雷Mine【乱搞】

【题目链接】   http://www.lydsy.com/JudgeOnline/problem.php?id=1088 【题解】   很水的一道题,有很多种解法。   笔者用的是,枚举最边上两个是不是雷,然后接下来的雷的分布方式就唯一了,按位确定并判断是否可行就行了。 /* -------------- user Vanishe...

dizhengyue1902的博客 104

BZOJ 1088: [SCOI2005]扫雷Mine 枚举

枚举前两位,递推剩下的 1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1832  Solved: 1090 [Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节

码代码的猿猿 959

【递推】BZOJ 1088: [SCOI2005]扫雷Mine

1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2275  Solved: 1328[Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏

puck_just_me的blog 552

[bzoj1088][SCOI2005]扫雷Mine

剣は凶器、剣术は杀人术、どんな奇丽语 とやお题目をくちにしても、それが真実。

Unlimited Code Works 321

bzoj1088 [SCOI2005]扫雷Mine

Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二

We are OIers 686

BZOJ 1088: [SCOI2005]扫雷Mine

Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二

jjs98 826

【bzoj 1088】 [SCOI2005]扫雷Mine

[SCOI2005]扫雷MineTime Limit: 10 Sec Memory Limit: 162 MB Submit: 3559 Solved: 2089 [Submit][Status][Discuss] Description  相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏

yyx2000的博客 313

BZOJ系列1088《[SCOI2005]扫雷Mine》题解

Description 相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二

Dante__Alighieri的专栏 1277

BZOJ1088 - [SCOI2005]扫雷Mine

原题链接 题意简述 在一个2行n(n≤104)列的扫雷棋盘中,仅在第一行存在雷。给出第二行的标数情况,求可能的方案数。 分析 记第一行的雷分布情况为ai,第二行的标数情况为bi,则有ai=bi−1−ai−2−ai−1。又因为bi是钦定的,所以只要确定a1和a2就能确...

TC1129的博客 94

BZOJ1088 [SCOI2005]扫雷Mine

Description   相信大家都玩过扫雷的游戏。那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来。万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它8连通的格子里面雷的数目。现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数...

dgoh41514的博客 180
上一篇: 【最小树形图(奇怪的kruskal)】【SCOI 2012】【bzoj 2753】滑雪与时间胶囊
下一篇: 【平面图转对偶图】【最短路】【Beijing 2006】【bzoj 1001】狼抓兔子
morestep
博客等级 码龄12年 20粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值