hdu5386(暴力)
题意:
给出两个n*n的矩阵,一个作为初始矩阵。一个作为目标矩阵,给出m个操作,操作有两种,一种是“L,x,y”。代表我们要把x这一行赋成y,还有一种是“H,x,y”,代表要把x这一列赋成y。问我们怎样安排这些操作才干把初始矩阵转化成目标矩阵。输出方案。special judge
思路:
首先明白一点,初始矩阵是没实用的~,依照题解的说法。我们能够按顺序枚举全部操作,假设是L操作,我们就在目标矩阵中找一行都是y的。把这一行都更成0,同一时候把答案更新,如此往复,直至我们得到一种方案。
附上题解代码(绍兴一中的):
#include <stdio.h>
#include <stdlib.h>
using namespace std; int T,n,m,t,i,j,k,l;
int a[105][105],b[505],c[505],ans[505];
char opt[505],ch; int main()
{
scanf("%d",&T);
for(;T;--T)
{
scanf("%d%d",&n,&m);t=0;
for(i=1;i<=n;++i)
for(j=1;j<=n;++j)
scanf("%d",&a[i][j]);
for(i=1;i<=n;++i)
for(j=1;j<=n;++j)
scanf("%d",&a[i][j]);
for(i=1;i<=m;++i)
{
for(ch=getchar();ch!='H'&&ch!='L';ch=getchar());
opt[i]=ch;scanf("%d%d",&b[i],&c[i]);
}
for(;t<m;)
{
for(i=1;i<=m;++i)
if(b[i])
{
k=b[i];
if(opt[i]=='L')
{
for(j=1;j<=n;++j)
if(a[j][k]&&a[j][k]!=c[i])
break;
if(j>n)
{
ans[++t]=i;b[i]=0;
for(j=1;j<=n;++j)a[j][k]=0;
}
}
else
{
for(j=1;j<=n;++j)
if(a[k][j]&&a[k][j]!=c[i])
break;
if(j>n)
{
ans[++t]=i;b[i]=0;
for(j=1;j<=n;++j)a[k][j]=0;
}
}
}
}
for(i=m;i>=1;--i)printf("%d ",ans[i]);
printf("\n");
}
}
hdu5386(暴力)的更多相关文章
- 2015 多校联赛 ——HDU5386(暴力)
Sample Input 1 3 5 2 2 1 2 3 3 2 1 3 3 3 3 3 3 3 3 3 3 H 2 3 L 2 2 H 3 3 H 1 3 L 2 3 Sample Output ...
- zone.js - 暴力之美
在ng2的开发过程中,Angular团队为我们带来了一个新的库 – zone.js.zone.js的设计灵感来源于Dart语言,它描述JavaScript执行过程的上下文,可以在异步任务之间进行持久性 ...
- [bzoj3123][sdoi2013森林] (树上主席树+lca+并查集启发式合并+暴力重构森林)
Description Input 第一行包含一个正整数testcase,表示当前测试数据的测试点编号.保证1≤testcase≤20. 第二行包含三个整数N,M,T,分别表示节点数.初始边数.操作数 ...
- HDU 5944 Fxx and string(暴力/枚举)
传送门 Fxx and string Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Othe ...
- 1250 Super Fast Fourier Transform(湘潭邀请赛 暴力 思维)
湘潭邀请赛的一题,名字叫"超级FFT"最终暴力就行,还是思维不够灵活,要吸取教训. 由于每组数据总量只有1e5这个级别,和不超过1e6,故先预处理再暴力即可. #include&l ...
- fragment+viepager 的简单暴力的切换方式
这里是自定义了一个方法来获取viewpager private static ViewPager viewPager; public static ViewPager getMyViewPager() ...
- ACM: Gym 101047M Removing coins in Kem Kadrãn - 暴力
Gym 101047M Removing coins in Kem Kadrãn Time Limit:2000MS Memory Limit:65536KB 64bit IO Fo ...
- uoj98未来程序改 纯暴力不要想了
暴力模拟A了,数据还是良(shui)心(shui)的 90分的地方卡了半天最后发现一个局部变量被我手抖写到全局去了,,, 心碎*∞ 没什么好解释的,其实只要写完表达式求值(带函数和变量的),然后处理一 ...
- 开源服务专题之------ssh防止暴力破解及fail2ban的使用方法
15年出现的JAVA反序列化漏洞,另一个是redis配置不当导致机器入侵.只要redis是用root启动的并且未授权的话,就可以通过set方式直接写入一个authorized_keys到系统的/roo ...
随机推荐
- docker (centOS 7) 使用笔记5 - weave网络
weave官网 https://www.weave.works 1. 下载安装 sudo curl -L git.io/weave -o /usr/local/bin/weave sudo chmod ...
- vue父组件向子组件传递数据
父组件 <template> <div id="app"> <v-header :childseller="fatherseller&quo ...
- vue2+nodejs+mongodb搭建移动端网站
从零开始一步步搭建移动端网站,持续更新,github代码如下,因为放了视频文件,下载可能有点慢 https://github.com/lanleilin/myHomepage 前端采用Vue2+vue ...
- Java EE 学习:使用 idea2017 搭建 SSM 框架
需要准备的环境: idea 2017.1 jdk1.8 Maven 3.3.9 请提前将idea与Maven.jdk配置好,本次项目用的都是比较新的 步骤: 一.首先使用idea新建一个Maven w ...
- linux服务器端口netstat
netstat命令各个参数说明如下: -t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的 ...
- sgu 275 To xor or not to xor 线性基 最大异或和
题目链接 题意 给定\(n\)个数,取其中的一个子集,使得异或和最大,求该最大的异或和. 思路 先求得线性基. 则求原\(n\)个数的所有子集的最大异或和便可转化成求其线性基的子集的最大异或和. 因为 ...
- IP首部之首部校验和
首先介绍一下1的补码,2的补码:(摘自http://blog.csdn.net/cradmin/article/details/3092559) 过1的补码,2的补码,到网上搜了下找到这个: It i ...
- noip2017集训测试赛(四)Problem A: fibonacci
题目大意 给你一个序列\(a_1, a_2, ..., a_n\). 我们令函数\(f(n)\)表示斐波那契数列第\(n\)项的值. 总共\(m\)个操作, 分为以下两种: 将\(x \in [L, ...
- 转:java中的事件监听是怎样实现随时监听的
http://blog.csdn.net/qq369201191/article/details/51204006
- Android 监听双卡信号强度(附完整代码)
Android 监听双卡信号强度 监听单卡信号强度 监听单卡的信号强度非常简单直接用TelephonyManager.listen()去监听sim卡的信号强度. TelephonyManager = ...