题目大意:

有KK个N∗MN*M的0101矩阵(1<=N,M<=10,2<=K<=6)(1 ,保证两两不同,然后要你从N∗MN*M矩阵中选出最少的位置,使得仅靠这些位置就能区分这KK个矩阵。
 ~
 ~
 ~

解题思路:

我们观察到KK的范围,发现如果我们将所有矩阵两两是否可以区分的信息存储下来需要的空间是2K∗(K−1)22^{\frac{K*(K-1)}{2}},是可以承受的,然后我们逐格dpdp,F[i][j][G]F[i][j][G]表示考虑到了第(i,j)(i,j)并且区分状态是GG时所需的最小的选取数,然后我们可以预处理出对于选取(i,j)(i,j)可以区分那几对矩阵。
所以最后的答案就是F[N][M][2K∗(K−1)2−1]F[N][M][2^{\frac{K*(K-1)}{2}}-1]。
 ~
 ~
 <script type="math/tex" id="MathJax-Element-767">~</script>

AC代码:

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <iostream>using namespace std;int N,M;
int K;
int ch[10][20][20]={{{0}}};
int change[20][20]={{0}};
int F[33000]={0};
bool Matrix[33000][11][11]={{{0}}};
int need[20][20]={{0}};int main()
{scanf("%d%d%d",&N,&M,&K);for(int i=1;i<=K;i++)for(int p=1;p<=N;p++)for(int q=1;q<=M;q++){scanf("%1d",&ch[i][p][q]);for(int j=1;j<i;j++)if(ch[i][p][q]!=ch[j][p][q])change[p][q]|=(1<<((i-2)*(i-1)/2-1+j));}memset(F,0x3f3f3f3f,sizeof(F));int Max=(1<<(K*(K-1)/2))-1;F[0]=0;int cnt=0;for(int i=1;i<=N;i++)for(int j=1;j<=M;j++){for(int p=Max-1;p>=0;p--){if(change[i][j]==0) continue;if(F[p]+1<F[p|change[i][j]]){F[p|change[i][j]]=F[p]+1;memcpy(Matrix[p|change[i][j]],Matrix[p],sizeof(Matrix[p]));Matrix[p|change[i][j]][i][j]=1;}}}printf("%d\n",F[Max]);for(int i=1;i<=N;i++){for(int j=1;j<=M;j++)printf("%d",Matrix[Max][i][j]);puts("");}return 0;
}

sgu-262 Symbol Recognition相关推荐

  1. 论文阅读和分析:Hybrid Mathematical Symbol Recognition using Support Vector Machines

    HMER论文系列 1.论文阅读和分析:When Counting Meets HMER Counting-Aware Network for HMER_KPer_Yang的博客-CSDN博客 2.论文 ...

  2. 史上最全的SGU题目分类

    由于SGU上神题遍地,特列此表,便于训练时分类训练. 101 Domino 欧拉路 102 Coprime 枚举/数学方法 103 Traffic Lights 最短路 104 Little Shop ...

  3. 计算机视觉论文-2021-09-10

    本专栏是计算机视觉方向论文收集积累,时间:2021年9月10日,来源:paper digest 欢迎关注原创公众号 [计算机视觉联盟],回复 [西瓜书手推笔记] 可获取我的机器学习纯手推笔记! 直达笔 ...

  4. 中国科学院计算机研究所上级单位,陈援非(中国科学院计算技术研究所高工)_百度百科...

    陈援非 (中国科学院计算技术研究所高工) 语音 编辑 锁定 讨论 上传视频 陈援非,男,博士.1976年10月出生于山东省济宁市.中国科学院计算技术研究所高工(副研究员级).ACM 和IEEE会员,中 ...

  5. 写论文比较有用的网站

    神网站算不上,都是一些为写作带来便利的网站.而且作为一些最常用网站的替代品,这些网站有的更精确,有的更便捷. 以下内容包括: 选择正确的英文词语:语料库Linggle 和 Netspeak 方便地查询 ...

  6. 写论文经常用到的网站、工具、技巧汇总【持续更新】

    学习需要,非商业转载,如有侵权请及时联系,立删,十分抱歉 工具汇总一-论文资料获取: 获取全文利器:Sci-Hub: removing barriers in the way of science[这 ...

  7. 手写体数字图像识别图像_手写识别调整笔画大小而不是图像

    手写体数字图像识别图像 A straightforward algorithm to dealing with handwritten symbol recognition problems in M ...

  8. 录用率48%到68%! I3D/ICDAR/CogSci/ICIP2023即将截稿

    点击文末公众号卡片,不错过计算机会议投稿信息 会议简称 截稿时间 通知时间 录用率 官网 I3D2023 22.12.21 23.2.21 22年47.0% https://i3dsymposium. ...

  9. ICDAR 2017 数据集介绍

    ICDAR即国际文档分析和识别大会,根据wiki的介绍: International Conference on Document Analysis and Recognition (ICDAR) i ...

最新文章

  1. c语言格式化写入文件大小,利用C语言格式化读写文件
  2. 东大19春在线作业计算机应用基础,东大19春学期《计算机应用基础》在线作业2...
  3. php7.1 改动,PHP7错误处理机制修改
  4. Eclipse真机测试注意事项
  5. 重庆理工大学两江校区计算机学院,重庆理工大学两江校区国际项目9月开学
  6. LVS的四种模式的实现
  7. NILMTK——经典数据集REDD介绍和使用
  8. 物联网火爆,入门却太难了!
  9. 热敏打印机原理java_java - 使用TSC TTP-342E Pro热敏打印机Java打印 - 堆栈内存溢出...
  10. Uber CEO博鳌论坛采访:看好中国市场共享经济的发展模式
  11. 作业:xml练习2-写.xml的外部约束文件(dtd文件)
  12. Vue:列表渲染 v-for on a template
  13. Python简单的小实验输出对应车站的中文简写(主要是为了解决汉字编码问题)
  14. 数学专业学c语言,数学专业C语言教学方法研究.pdf
  15. mysql 日文乱码_Mysql 导入日文数据乱码问题
  16. vue + vant 使用阿里图标库
  17. Matlab与线性代数 -- Hilbert矩阵
  18. 计算机到点就有音乐怎么清除缓存垃圾,QQ音乐缓存文件在哪 QQ音乐缓存清理方法-电脑教程...
  19. GPS基带P码处理总结——FPGA实现的关键点
  20. 从键盘输入一系列字符(以回车键结束),并按字母、数字及其它字符分类统计,最后显示这三类的统计结果

热门文章

  1. NCBI 数据介绍和下载
  2. linux嵌入sql语句,嵌入SQL/C语言---(informix)
  3. cmd命令行切换盘符
  4. 计算机实验网上邻居与用户共享,实验6 网上邻居.doc
  5. 晶圆测试开发软件,晶圆级可靠性测试:器件开发的关键步骤(一)
  6. CHESSBOARD(模拟)
  7. STM32使用printf重定向到USART(串口)并打印数据到串口助手
  8. 用matlab对excel数据傅里叶变换,快速傅里叶变换_用excel如何作快速傅里叶变换?...
  9. 51单片机定时器的配置与使用
  10. CodeForces - 750D New Year and Fireworks