-
excel的使用
2012-11-25 17:06:01下面给出一个例子:选中一列,然后单击“格式”菜单中的“单元格”命令,在弹出的对话框中选择“数字”选项卡,在“分类”列表中选择“自定义”,然后在“类型”文本框中输入“"正数:"($#,##0.00);"负数:"($ #,##... -
【PKUWC2019模拟2019.1.15】Square(结论题)
2019-01-16 16:11:17首先需要判断答案是否存在,这非常简单,每次找到一行或一列全是一样颜色的,然后把他们变成通配颜色,如果矩阵能全部变成通配颜色,就可行。 不然发现要不每一行都染了,要不每一列都染了,不然会有点染不到。 假设...Description:
题解:
怎么说呢,一道联赛题没有做出来。
以后还是要在一开始就想清楚,后面真的是越想越迷。
首先需要判断答案是否存在,这非常简单,每次找到一行或一列全是一样颜色的,然后把他们变成通配颜色,如果矩阵能全部变成通配颜色,就可行。
不然发现要不每一行都染了,要不每一列都染了,不然会有点染不到。
假设每一行都染了,我们不用关心每一行染了什么,只用看最多有多少列完全相同,行的染色方案去贴合这些列,其它列去贴合行一定是最优的。
n+m-这个即可。
Code:
#include<map> #include<cstdio> #include<cstring> #include<algorithm> #define gc getchar #define pp printf #define ul unsigned long long #define fo(i, x, y) for(int i = x; i <= y; i ++) using namespace std; char get() { char c = ' '; while(c != 'B' && c != 'R') c = gc(); return c; } const int N = 3005; int ct; int n, m, a[N][N], b[N][N]; int pd() { fo(i, 1, n) fo(j, 1, m) if(a[i][j] != 0) return 0; return 1; } int s1[N][3], s2[N][3]; int pdd() { int q0 = 1; fo(i, 1, n) { if(s1[i][0] == m) continue; q0 = 0; if(s1[i][1] && s1[i][2]) continue; fo(j, 1, m) { s1[i][a[i][j]] --; s2[j][a[i][j]] --; a[i][j] = 0; s1[i][a[i][j]] ++; s2[j][a[i][j]] ++; } return pdd(); } fo(j, 1, m) { if(s2[j][0] == n) continue; q0 = 0; if(s2[j][1] && s2[j][2]) continue; fo(i, 1, n) { s1[i][a[i][j]] --; s2[j][a[i][j]] --; a[i][j] = 0; s1[i][a[i][j]] ++; s2[j][a[i][j]] ++; } return pdd(); } return q0; } map<ul, int> bz; int main() { freopen("square.in", "r", stdin); freopen("square.out", "w", stdout); scanf("%d %d", &n, &m); fo(i, 1, n) fo(j, 1, m) a[i][j] = get() == 'B' ? 1 : 2; fo(i, 1, n) fo(j, 1, m) s1[i][a[i][j]] ++, s2[j][a[i][j]] ++; fo(i, 1, n) fo(j, 1, m) b[i][j] = a[i][j]; if(!pdd()) { pp("-1\n"); return 0; } fo(i, 1, n) fo(j, 1, m) a[i][j] = b[i][j]; int mx = 0; fo(i, 1, n) { ul sum = 0, x = 1; fo(j, 1, m) sum += x * a[i][j], x *= 23; bz[sum] ++; mx = max(mx, bz[sum]); } bz.clear(); fo(j, 1, m) { ul sum = 0, x = 1; fo(i, 1, n) sum += x * a[i][j], x *= 23; bz[sum] ++; mx = max(mx, bz[sum]); } pp("%d", n + m - mx); }
-
.NET平台上的文件抽取框架toxy.zip
2019-07-19 03:18:01主要解决各种格式的内容抽取问题,比如pdf, doc, docx, xls, xlsx等,尽管听上去支持了很多格式,但它的使用却是极其方便的,因为Toxy把复杂的抽取流程透明化,Toxy的用户根本不用知道内容是怎么抽出来的,这就是... -
ExtAspNet v2.2.1 (2009-4-1) 值得一看
2010-04-01 09:41:27+修正动态创建Grid列的BUG(feedback:gxpan)。 -增加示例(data/grid_dynamic_columns.aspx)。 -修正Form不能自适应浏览器大小的改变(feedback:kaywood)(WorkItem#6309)。 -增加重载方法Alert.Show(message, ... -
关于数据库存储键值对的问题
2020-12-06 11:30:14现在客户需要把Age显示在第一列,用户拖拽后表头显示的顺序变成 Age UserName Sex,每用户对这个表头的显示都不一样,而且下次用户登录进来,就显示上次用户配置好的表头显示顺序进行显示... -
Mysql两列值互换
2018-10-28 10:45:44如图,表中有两列值,现在要把两列的值做交换,怎么写SQL? 第一印象:扩展出来一列:cc,然后将bc值给...你会发现两值变成了一样的,失败!!!为啥呢? 如下,执行ac=bc,第一条ba值更新给了ac,此时ac和bc的值...如图,表中有两列值,现在要把两列的值做交换,怎么写SQL?
第一印象:扩展出来一列:cc,然后将bc值给cc。然后ac再更新给bc;然后cc更新到ac;然后删除cc列。
如此一来,太麻烦了。
那么一条SQL怎么改呢?update tb set ac=bc,bc=ac .这样?你会发现两值变成了一样的,失败!!!为啥呢?
如下,执行ac=bc,第一条ba值更新给了ac,此时ac和bc的值是一样的,都是bc的值。然后你又把更新后的ac值(还是bc的值)更新给了bc。所以更新失败。
那用一条SQL怎么写呢?
UPDATE tb t1, tb t2 set t1.ac=t1.bc,t2.bc=t2.ac;
-
自己动手写操作系统(含源代码).part2
2010-10-18 19:47:45所谓填补空白,具体说就是让像我一样的操作系统爱好者在读完本书之后,能够有信心去读其他比较流行的开源的操作系统代码,有能力从零开始自己动手写操作系统,而这个任务第一版已经完成了。 那么为什么我又写作了第... -
自己动手写操作系统(含源代码).part1
2010-10-18 19:41:25所谓填补空白,具体说就是让像我一样的操作系统爱好者在读完本书之后,能够有信心去读其他比较流行的开源的操作系统代码,有能力从零开始自己动手写操作系统,而这个任务第一版已经完成了。 那么为什么我又写作了第... -
400个DreamWeaver插件
2013-03-28 15:30:13mxp/使一个多行的表格行和行之间颜色交替,像斑马线一样。2.0版本 mxp/可以倒出-倒入站点信息,方便其他开发者 mxp/插入e-Vue MPEG-4格式的文件 mxp/Mycomputer.com提供的一套Banner交换系统,使用起来需要注册,... -
CorelDRAW X4增强插件合集包(完美解决6.1过期问题)
2010-06-08 16:56:24注:此软件其实主要不是用来解决CorelDRAW X4时间过期问题的软件,它主要还是一个CorelDRAW X4的增强插件包,安装此增强插件包,不但同时解决了你CorelDRAW X4过期问题,而且可以把你的CorelDRAW X4变成增强版。一物... -
Linux操作系统基础教程
2013-04-08 21:34:26在这一讲中,我们主要是了解一下 Linux 的概况,以及对 Linux 有一个初步的感性认识。 一.什么是Linux? Linux 是一个以 Intel 系列 CPU(CYRIX,AMD 的 CPU也可以)为硬件平台,完全免费的 UNIX 兼容系统,完全... -
本人新手 请教比较两个list问题
2015-04-29 03:44:07想通过比较两个list前半部分 如果liata 中a与listb中a 一样 那么就把listb 中的 2付给lista lista就变成 a 1 2 然后把lista 添加到excel的第三列 我写了一部分代码 foreach (string on in listb) { string[] ... -
C#微软培训教材(高清PDF)
2009-07-30 08:51:17把 Internet 建成一 建成建成 建成 个 一个一 一个可 可个可 可 以互相交换组件的地方 以互相交换组件的地方以互相交换组件的地方 以互相交换组件的地方 比尔 比尔比尔 比尔.盖茨 盖茨盖茨 ... -
VB课程设计俄罗斯方块
2011-02-25 10:46:55其实在游戏区图形框可以看成是由许多的command小方块组成,方块运动的过程就是造型里方块显示或者隐藏,就像现在的霓虹灯效果一样,由时钟控件控制visible属性改变的速度,上一层的消失,下一层的显示,这样,从视觉... -
C#微软培训资料
2014-01-22 14:10:17把 Internet 建成一 建成建成 建成 个 一个一 一个可 可个可 可 以互相交换组件的地方 以互相交换组件的地方以互相交换组件的地方 以互相交换组件的地方 比尔 比尔比尔 比尔.盖茨 盖茨盖茨 ... -
2017数学建模国赛+深圳杯优秀论文
2018-10-30 19:03:46比如我把今年 A 题第一问 从物理受力问题变成了迭代求解问题,这样编程的同学则会舒服很多 数学建模参考的书目以及网站 书籍 1.《 数学模型》姜启源等著 阅读人群:建模 这本书虽然被奉为数学建模最经典的入门书... -
c++ 面试题 总结
2009-09-16 08:44:40段式管理:把主存分为一段一段的,每一段的空间又要比一页一页的空间小很多,这种方法在空间利用率上又比页式管理高很多,但是也有另外一个缺点。一个程序片断可能会被分为几十段,这样很多时间就会被浪费在计算每一... -
JAVA 正则表达式
2010-01-15 11:16:37大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例 如字符 a 到 z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或 多个字符串... -
Quartus_II使用教程
2012-11-26 23:20:43生成一个和设计图名字一样的bsf文件,即为打包的芯片。 在memory设计图中,双击空白处,输入cdu16(名称为刚才自行设计模块的文件名) 就可以调出自己打包的芯片,也可以双击后在project中点选,如图10. 图... -
精通Oracle PL/SQL--详细书签版
2012-08-21 13:06:28我们不是要把你变成PL/SQL程序员,而是要把你变成一位精明的PL/SQL程序员。 本书内容 本书提供了大量的提示、技巧和完整策略,供你在公司中最充分地利用PL/SQL的优点。学完这本书之后,你将像我们一样确信,PL/... -
让Oracle跑得更快:Oracle10g性能分析与优化思路--详细书签版
2013-02-06 16:23:02对象采样分析是CBO(基于成本的优化器)的灵魂和核心,CBO如果没有了对象的分析数据,就好像一个医生不使用病人的病历来确定病人的病一样危险—那是一种没有依据的、盲目的行为。 在这一章里,我们将详细讨论... -
小程序底层实现原理及一些思考
2021-01-08 14:32:16事情会变成一场官方和开发者之间持久的攻防战。 无论怎样,这个方案解决了目前遇到的所有问题,这也为我留下了非常多的时间去研究真正的小程序应该怎样做。 <h2>4. 回归双线程 最终,我发现双线程... -
ExtAspNet_v2.3.2_dll
2010-09-29 14:37:08-修正了Grid列属性DataFormatString的一个bug,比如设置{0:yy-MM-dd HH:mm}时没有效果。 -修正下拉列表控件不能绑定DataTable的BUG(feedback:RedOcean)。 -增加土耳其语言资料文件(feedback:abdullaharslan)。 -... -
如何编写批处理文件批处理文件批处理文件
2010-04-14 10:36:10@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。) 3.Goto 命令 指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。 ... -
网管教程 从入门到精通软件篇.txt
2010-04-25 22:43:49小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。 Bootcfg bootcfg 命令启动配置和故障恢复(对于大多数计算机,即 boot.ini 文件)。 含有下列参数的 bootcfg 命令仅在... -
华为编程开发规范与案例
2008-09-04 16:44:56近日在CDB并行测试中发现一个问题:我们需要的小区负荷话统结果总是为零,开始还以为小区负荷太小,于是加大短消息下发数量,但还为零,于是在程序中加入测试代码,把收到的数据在BAM上打印出来, 结果打印出来的... -
# 只取第一列,即正样本列概率。 hit_prob = tf.slice(prob, [0, 0], [-1, 1]) loss = -tf.reduce_sum(tf.log(hit_prob)) tf.summary.scalar('loss', loss) 3.5选择优化方法 with tf.name_scope('Training'): ...
收藏数
27
精华内容
10
-
精益开发治理的最佳实践,第2部分:过程和度量
-
PHPUnit远程代码执行漏洞 CVE-2017-9841 漏洞复现
-
MySQL 多实例安装 及配置主从复制实验环境
-
大尺寸薄壳物体表面的三维光学自动检测
-
平面型四光纤耦合系统的研究
-
Glasterfs 分布式网络文件系统
-
DevOps,不是一个传说!
-
虚函数,虚表深度剖析
-
基于Flink+Hudi构建企业亿级云上实时数据湖教程(PC、移动、小
-
scrapy_pipelines.py
-
龙芯实训平台应用实战(希云)
-
Shell学习计划——Shell 变量
-
Spring实现事务管理
-
PlutoniumEnergy:用于Factorio的Plutonium Energy mod-源码
-
产品团队管理经验一枚
-
基于python的dango框架购物商城毕业设计毕设源代码使用教程
-
Amoeba 实现 MySQL 高可用、负载均衡和读写分离
-
移动手机用户体验的三个层次
-
WPF-DataGrid中CheckBox实现全选与非全选
-
深度学习-源码