语言:C++
描述:这道题其实一开始自己就是错误思维,题目就是通过最少的二进制位表示所有的数,也就是说存在自由组合的问题,不过存在这样的问题:如果一列二进制数被删去后,可以使列数减一来表示了所有的数了,但是有可能列数只会减一,输出的结果就是列数-1了,也就是说其他还有可能的情况都被封锁了。所以,原本的方法出现了错误,虽然测试数据过了,但是uva测试数据过不了,然后不得不根据刘汝佳书上的位向量法改写了一点才AC的#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std;
int count,P,N,s[110][20];
bool visit[20];
char str[110][20];
void print_subset(int cur)
{if(cur==P){int c=0;for(int i=0; i<cur; i++)if(visit[i]){for(int j=0; j<N; j++)str[j][c]=s[j][i]+'0';c++;}for(int i=0; i<N; i++) str[i][c]=0;for(int i=0; i<N-1; i++)for(int j=i+1; j<N; j++)if(!strcmp(str[i],str[j])) return;if(c<count) count=c;return ;}visit[cur]=true;print_subset(cur+1);visit[cur]=false;print_subset(cur+1);
}
int main()
{//freopen("a.txt","r",stdin);int n,i,j;scanf("%d",&n);while(n--){scanf("%d%d",&P,&N);memset(str,0,sizeof(str));for(i=0; i<N; i++)for(j=0; j<P; j++)scanf("%d",&s[i][j]);count=P;print_subset(0);printf("%d\n",count);}return 0;
}

11205 - The broken pedometer相关推荐

  1. UVaOJ 11205 - The broken pedometer

    --by A Code Rabbit Description 有p个LED灯,可以组成一个灯牌. 灯牌上可以显示一些有意义的符号,比如显示数字啥的. 现在有n个灯牌,显示的符号各不相同. 问你最少用几 ...

  2. UVA 11205 - The broken pedometer

    题目大意:题中给了一种例子,LED的七根灯管不同的开关方式显示0到9的数字.其中可以去掉第六根灯管(可能去掉其他也可以,没细究)也就是只要六根灯管就可以区分所有的数字.简单理解可以认为是7位的一个二进 ...

  3. uva 11205 The broken pedometer

    刚开始一列一列考虑,最后再减去能去掉几列,后来才发现是错误的.单独考虑某一列,同时去掉几列时,单独考虑的不一定成立.后来一查是算法竞赛入门经典里面的p188页的位向量法.原来一直以为这边书空有理论,现 ...

  4. UVa11205 The Broken Pedometer

    // 题意:有P个LED灯,以及N个字符,要求选出个数最少的LED灯,使得即使只有这些灯正常工作,也能区分出这N个字符 // 题意抽象:输入两个整数P, N以及N行P列的01矩阵,找少的列,能区分所有 ...

  5. 提取了下刘汝佳推荐的题号...

    今天闲来没事上uva oj提取了下刘汝佳推荐的acm题号,原始数据如下: Volume 0. Getting Started    10055 - Hashmat the Brave Warrior ...

  6. 第六周 8.23-8.29

    8.23 POJ 3311 Hie with the Pie TSP问题. 先跑一遍Floyd.再状压dp. dp[i][j]表示经过集合i的点最后到达j的最短距离. 转移:取集合i中任意一点j.如果 ...

  7. TYUT-A专题题解(一)

    TYUT-A专题题解(一) 01A Ad Hoc UVA353 LA5247 Pesky Palindromes[回文] - 海岛Blog - CSDN博客 UVA947 Master Mind He ...

  8. Competitive Programming 3题解

    题目一览: Competitive Programming 3: The New Lower Bound of Programming Contests(1) Competitive Programm ...

  9. AOAPC I: Beginning Algorithm Contests 题解

    AOAPC I: Beginning Algorithm Contests 题解 AOAPC I: Beginning Algorithm Contests (Rujia Liu) - Virtual ...

最新文章

  1. mongodb学习笔记(1)
  2. Unity3D(UE4)加载倾斜摄影数据OSGB格式
  3. java操作_JAVA操作文件大全(一)
  4. 多个python脚本同时执行_Python实现脚本锁功能(同时只能执行一个脚本)
  5. 初识Notification
  6. 草稿 复选框绑定数据 1204
  7. Unit5 Survival Shooter笔记3
  8. Hadoop平台搭建
  9. 【java进阶之路】(并发编程篇)1.Java线程
  10. 深度学习2.0-7.tensorflow的高阶操作之数据统计
  11. 记一次设置密钥登陆centos7所遇问题
  12. XenServer利用XenCenter配置网络选项
  13. 勤哲excel服务器自动计算工资,勤哲Excel服务器软件实现财务自动化管理系统
  14. 银行自助填表方案介绍
  15. 微信背单词小程序——小鸡单词
  16. macOS: 卸载 Flash Player 迎接 2021
  17. halo_回顾:Halo 3与糖尿病抗争
  18. 计算机中的网络协议包括哪些,网络协议三要素有什么关系
  19. js对象是什么?js对象类型有哪些?js对象类型的总结
  20. java.util.Date和java.sql.Timestamp转换

热门文章

  1. python-中介者模式
  2. Ubuntu18.04美化成Mac桌面
  3. 微信红包文案怎么写吸引人,520发红包感想
  4. 关于OpenGL利用VBO绘制以及VBO和VAO的关系
  5. 小米2s的座充,看看这个是什么芯片? - 电池综合DIY(Flashlight Electronics-Batteries Include - 手电大家谈-手电筒爱好者之家...
  6. 《吐血整理》顶级大佬学习方法
  7. 计算机网络采用什么标识主机,2-网络中计算机的标识----IP地址
  8. 如何将视频动画做成gif动图表情包?
  9. axios同步和异步请求数据
  10. php png透明图片合成