A. Pasha and Pixels
来源:互联网 发布:html网页制作软件 编辑:程序博客网 时间:2024/05/22 14:24
Pasha loves his phone and also putting his hair up... But the hair is now irrelevant.
Pasha has installed a new game to his phone. The goal of the game is following. There is a rectangular field consisting of n row with mpixels in each row. Initially, all the pixels are colored white. In one move, Pasha can choose any pixel and color it black. In particular, he can choose the pixel that is already black, then after the boy's move the pixel does not change, that is, it remains black. Pasha loses the game when a 2 × 2 square consisting of black pixels is formed.
Pasha has made a plan of k moves, according to which he will paint pixels. Each turn in his plan is represented as a pair of numbers iand j, denoting respectively the row and the column of the pixel to be colored on the current move.
Determine whether Pasha loses if he acts in accordance with his plan, and if he does, on what move the 2 × 2 square consisting of black pixels is formed.
The first line of the input contains three integers n, m, k (1 ≤ n, m ≤ 1000, 1 ≤ k ≤ 105) — the number of rows, the number of columns and the number of moves that Pasha is going to perform.
The next k lines contain Pasha's moves in the order he makes them. Each line contains two integers i and j (1 ≤ i ≤ n, 1 ≤ j ≤ m), representing the row number and column number of the pixel that was painted during a move.
If Pasha loses, print the number of the move when the 2 × 2 square consisting of black pixels is formed.
If Pasha doesn't lose, that is, no 2 × 2 square consisting of black pixels is formed during the given k moves, print 0.
2 2 41 11 22 12 2
4
2 3 62 32 21 32 21 21 1
5
5 3 72 31 21 14 13 15 33 2
0
解题说明:此题可以通过简单的暴力判断来做,只要找到有2*2的黑色区域即可
#include<cstdio>#include<iostream>#include<algorithm>using namespace std;bool tab[1005][1005];int main(){int n,m,k,a,b,lost=0;scanf("%d%d%d",&n,&m,&k);for (int i=1;i<=k;i++){scanf("%d%d",&a,&b);tab[a][b] = 1;for (int x=-1;x<2;x+=2){for ( int y=-1;y<2;y+=2){if ( tab[a+x][b+y] && tab[a+x][b] && tab[a][b+y] && lost == 0 ){lost = i;}}}}printf("%d\n",lost);return 0;}
- A. Pasha and Pixels
- A. Pasha and Pixels
- codeforce A. Pasha and Pixels
- codeforces #508A# Pasha and Pixels
- CF 508A(Pasha and Pixels-暴力)
- codeforces 508 A Pasha and Pixels
- CodeForces 508A Pasha and Pixels
- CodeForces 508A Pasha and Pixels
- Codeforces Round #288 (Div. 2) A. Pasha and Pixels
- Codeforces Round #288 (Div. 2) A. Pasha and Pixels
- Codeforces Round #288 (Div. 2) A. Pasha and Pixels
- A. Pasha and Pixels(Codeforces Round #288 (Div. 2))
- A. Pasha and Pixels(Codeforces Round #288 (Div. 2))
- codeforces - 508A - Pasha and Pixels(暴力模拟)
- codeforces--A - Pasha and Pixels--B - Anton and currency you all know
- A. Pasha and Stick
- 610A Pasha and Stick
- Codeforces 610A Pasha and Stick 【水题】
- 单个控件字体设置的方法
- C# Winform 实现透明label
- Android 关于使用LruCache缓存你想缓存的数据
- 结构风险最小和VC维理论的解释
- 防止jquery ajax 重复提交
- A. Pasha and Pixels
- Android 应用程序如何做内存优化
- PHPer都应该关注的服务端性能问题–听云Server试用笔记
- 各种开源资源大全
- UML笔记8--构件图
- C++ 全局变量、局部变量、静态全局变量、静态局部变量的区别
- 浅谈操作系统对内存的管理
- 算法竞赛入门经典第二版的学习
- android图片处理方法(不断收集中)