CF116B Little Pigs and Wolves 题解
Content
有一张 \(n\times m\) 的地图,其中,\(\texttt{P}\) 代表小猪,\(\texttt{W}\) 代表狼。如果狼的上下左右有一头以上的小猪,那么它会吃掉其中相邻的任意一头小猪(此过程不再重复)。求有多少头小猪会被狼吃掉。
数据范围:\(1\leqslant n,m\leqslant 10\)。
Solution
如果 \(n,m\) 的范围很大,那么 @123456zmy 巨佬的 \(\texttt{Dinic}\) 算法无疑是一个绝佳的选择。
然而,这题目中 \(n,m\) 的范围实在小到可怜,我们为什么不直接暴力模拟呢?如果仔细看题的话不难发现,这道题目实质上就是想问你有多少匹狼能够吃到小猪。所以,我们可以记录下来每一匹狼的位置,然后遍历每个狼的上下左右是否会有小猪,有的话那么这匹狼就能够吃到一头小猪,记录答案之后输出就好了。
Code
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <iostream>
using namespace std;
const int dx[4] = {0, 0, -1, 1};
const int dy[4] = {-1, 1, 0, 0};
int n, m, xwolf[107], ywolf[107], cnt, ans;
char s[17][17];
int main() {
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; ++i) {
scanf("%s", s[i] + 1);
for(int j = 1; j <= m; ++j)
if(s[i][j] == 'W') xwolf[++cnt] = i, ywolf[cnt] = j;
}
for(int i = 1; i <= cnt; ++i)
for(int j = 0; j < 4; ++j)
if(s[xwolf[i] + dx[j]][ywolf[i] + dy[j]] == 'P') {
ans++;
break;
}
printf("%d", ans);
return 0;
}
CF116B Little Pigs and Wolves 题解的更多相关文章
- codeforces 之 Little Pigs and Wolves
B-Little Pigs and Wolvestime limit per test2 secondsmemory limit per test256 megabytesinputstandard ...
- codeforces116B
Little Pigs and Wolves CodeForces - 116B Once upon a time there were several little pigs and several ...
- POJ1149:PIGS——题解
http://poj.org/problem?id=1149 题目大意: Mirko有M个猪圈和N个客户,猪圈里有特定数量的猪,每个客户按照顺序来买猪,他们只能打开他们能打开的猪圈,然后取走一些猪(上 ...
- 题解 POJ1149 Pigs
先翻译一下吧(题面可以在原OJ上找) Mirko在一个由M个锁着的猪舍组成的养猪场工作,Mirko无法解锁任何猪舍,因为他没有钥匙.客户纷纷来到农场.他们每个人都有一些猪舍的钥匙,并想购买一定数量的猪 ...
- [题解] Codeforces 1548 C The Three Little Pigs 组合数学,生成函数
题目 首先令\(x=i\)时的答案为\(f_i\) ,令\(f_i\)对应的普通生成函数为\(F(x)\). 很容易发现\(F(x)=\sum_{i=0}^n (1+x)^{3i}\),sigma是在 ...
- poj 1149 PIGS【最大流经典建图】
PIGS Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 18727 Accepted: 8508 Description ...
- 2014年亚洲区域赛北京赛区现场赛A,D,H,I,K题解(hdu5112,5115,5119,5220,5122)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud 下午在HDU上打了一下今年北京区域赛的重现,过了5题,看来单挑只能拿拿铜牌,呜呜. ...
- POJ1149 PIGS 【最大流量】
PIGS Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 16555 Accepted: 7416 Description ...
- 【BZOJ1280】Emmy卖猪pigs 最大流
[BZOJ1280]Emmy卖猪pigs Description Emmy在一个养猪场工作.这个养猪场有M个锁着的猪圈,但Emmy并没有钥匙.顾客会到养猪场来买猪,一个接着一个.每一位顾客都会有一些猪 ...
随机推荐
- Ubuntu文件权限管理
1.介绍 第一个是设备文件类型 以c开头的是字符 以b开头的是块存储 ls-l: 读写可执行 rwx | rwx | rwx 这个文件所属的用用户 组内其他成员 其他不属于用户组的成员 2.文件权限修 ...
- 【GitHub】本地代码上传
本地代码上传GitHub 2019-11-18 20:03:45 by冲冲 1.注册GitHub https://github.com/ 2.安装Git工具 https://git-for-win ...
- java8特性表达式
public static void main(String[] args) { JFrame jframe = new JFrame("My JFrame"); JButton ...
- html中引入外部js文件,使用外部js文件里的方法
外部js文件1: /** * 加了window.onload 后,直接引入js文件即可 * 页面资源全部加载完毕后会自动调用window.onload里的回调函数 */ window.addEvent ...
- Codeforces 193D - Two Segments(线段树)
Codeforces 题目传送门 & 洛谷题目传送门 感觉这个 *2900 并不难啊,为什么我没想出来呢 awa 顺便膜拜 ycx 一眼秒掉此题 %%% 首先碰到这类题有两种思路,一是枚举两个 ...
- 2021-2-3-利用anaconda+prefetch+aspera从NCBI的SRA数据库中下载原始测序数据
目录 1.Conda连接不上镜像源问题 2. aspera不能再独立使用 3.使用prefetch搭配aspera 4. prefetch下载方法 记录下下载过程,为自己和后人避坑. 1.Conda连 ...
- msql_5.6.46编译问题
初始化数据库的时候, 使用mysql_install_db 必须是再mysql安装的目录下用相对路径去进行初始化 CentOs6.9必须先把/etc/my.cnf 先改为其他名字,之后再把安装目录下s ...
- 充分利用nginx的reload功能平滑的上架和更新业务
以前更新我们都要停服务更新,不管什么时候更新,都可能有客户在访问,体验不好,二是如果有数据传输,可能会造成数据丢失. nginx reload可以不间断更新配置文件,原理就是当我们修改配置文件发起re ...
- Spark基础:(二)Spark RDD编程
1.RDD基础 Spark中的RDD就是一个不可变的分布式对象集合.每个RDD都被分为多个分区,这些分区运行在分区的不同节点上. 用户可以通过两种方式创建RDD: (1)读取外部数据集====> ...
- 【leetcode】208. Implement Trie (Prefix Tree 字典树)
A trie (pronounced as "try") or prefix tree is a tree data structure used to efficiently s ...