【CCF 消除类游戏 水】
来源:互联网 发布:网络语无公害的意思 编辑:程序博客网 时间:2024/04/27 15:50
外包接到想放弃学习…………
思路的话就那数组标记下哪些是可以消除的,不能直接修改原数组,因为可能会阶段另一个方向的消除。
消除的时候就横着扫一遍,竖着扫一遍
#include <cstdio>#include <iostream>#include <cstring>using namespace std;#define maxn 33int a[maxn][maxn],del[maxn][maxn];int main(){ int n,m; cin>>n>>m; memset(del,0,sizeof(del)); for(int i=0;i<n;i++) for(int j=0;j<m;j++) cin>>a[i][j]; for(int i=0,j=0;i<n;i++) { int pre=a[i][0],tmp=1,st=0; for(j=1;j<m;j++) { if(a[i][j]==pre) tmp++; else { if(tmp>=3) { for(int k=st;k<j;k++) del[i][k]=1; } tmp=1;pre=a[i][j];st=j; } } if(tmp>=3) for(int k=st;k<j;k++) del[i][k]=1; } for(int j=0,i=0;j<m;j++) { int pre=a[0][j],tmp=1,st=0; for(i=1;i<n;i++) { if(a[i][j]==pre) tmp++; else { if(tmp>=3) { for(int k=st;k<i;k++) del[k][j]=1; } tmp=1;pre=a[i][j];st=i; } } if(tmp>=3) { for(int k=st;k<i;k++) del[k][j]=1; } } for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(del[i][j]) cout<<0<<" "; else cout<<a[i][j]<<" "; } cout<<endl; } return 0;}
0 0
- 【CCF 消除类游戏 水】
- CCF 消除类游戏
- CCF 消除类游戏
- ccf 消除类游戏
- CCF 消除类游戏
- ccf 消除类游戏
- CCF消除类游戏
- CCF 消除类游戏
- CCF之消除类游戏
- ccf试题 消除类游戏
- ccf认证消除类游戏
- CCF之消除类游戏
- CCF 201512-2 消除类游戏(水)
- C++ CCF真题----消除类游戏
- CCF-201512-2 消除类游戏(模拟)
- CCF真题----消除类游戏
- CCF 201512-2 消除类游戏
- CCF-201512-2-消除类游戏
- 堆排序
- android机顶盒开发之修改设备Model,Device name
- C++_类_不同类型成员变量的初始化方式
- Frogger最短路径
- 使用开源库控件实现倒计时功能
- 【CCF 消除类游戏 水】
- docker常用命令
- Linux网络编程面试--多线程同步
- Android在dialog中使用EditText不能弹出软键盘
- ActiveMQ入门实例
- 整数划分问题
- 1、Angularjs — 简介
- 功率放大管结温分析
- Caffe 学习笔记1