Codeforces Round #108 (Div. 2)
Codeforces Round #108 (Div. 2)
C. Pocket Book
题意
- 给定\(N(N \le 100)\)个字符串,每个字符串长为\(M(M \le 100)\)。
- 每次选择\(i, j, k\),然后交换串\(i\)和串\(j\)的长度为\(k\)的前缀。
- 操作可以做任意次,求最多能得到多少不同的字符串,\(modulo (10^9+7)\)。
思路
- 相当于每个位置的可选字符为该列的不同字符的数量。
代码
D. Frames
题意
- 给定一个\(n \times m(3 \le n,m \le 1000)\)的矩阵,由'.'和'#'构成。
- 两个矩形框放入该矩阵,'#'表示格子被矩形框覆盖,且边长均不小于3。
- 两个矩形框的关系是任意的,重边、重叠,甚至完全重叠也是可以的。
- 判断原矩阵是否能由两个矩形框表示,若可以输出"YES"以及两个矩形框的左上角坐标和右下角坐标,否则输出"NO"。
思路
- 找出横向长度大于2的行号,显然只有最小值,次小值,最大值,次大值有可能成为矩形框的横坐标。
- 暴力枚举判定即可。
代码
E. Garden
题意
- 一个\(n \times m(1 \le n,m \le 100,n \cdot m \le 200)\)的网格,有\(k(k \le 7)\)的格子必须要覆盖,且任意两个格子之间要存在一条路径(相邻格子有一条公共边)。
- 覆盖格子\((i,j)\)的代价为\(a(i,j)\)。
- 求最小代价,并输出一种方案,'X'表示覆盖,'.'表示未覆盖。
思路
- 用\(f[u][mask]\)表示格子覆盖状态\(mask\)且集中到\(u\)的最小代价。
- 转移:\[f[u][mask]=min{f[u][submask] + f[u][mask \oplus submask] - v[u]}\]
\(v[u]\)表示点\(u\)的覆盖代价,即\(a[i = u / m][j = u \% m]\)
当状态\(mask\)集中到\(u\)之后,可以走到或者说扩展到其他点\(v\),这个bfs一下即可。
代码
Codeforces Round #108 (Div. 2)的更多相关文章
- 组合数学题 Codeforces Round #108 (Div. 2) C. Pocket Book
题目传送门 /* 题意:每一次任选i,j行字符串进行任意长度前缀交换,然后不断重复这个过程,问在过程中,第一行字符串不同的个数 组合数学题:每一列不同的字母都有可能到第一行,所以每列的可能值相乘取模就 ...
- Educational Codeforces Round 108 (Div. 2), C map套vector存储
地址 Problem - C - Codeforces 题目 题意 一个学校有n个人参加比赛,他们分别属于ui队,每个人的能力值为si 当每个队需要1~n个人的时候,这个学校能参加的人的能力值和最大 ...
- Codeforces Round #603 (Div. 2) A. Sweet Problem(水.......没做出来)+C题
Codeforces Round #603 (Div. 2) A. Sweet Problem A. Sweet Problem time limit per test 1 second memory ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
- Codeforces Round #279 (Div. 2) ABCDE
Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems # Name A Team Olympiad standard input/outpu ...
- Codeforces Round #262 (Div. 2) 1003
Codeforces Round #262 (Div. 2) 1003 C. Present time limit per test 2 seconds memory limit per test 2 ...
随机推荐
- Highcharts导出gb2312乱码问题
Highcharts是utf-8编码的,其本地的.net导出环境也是utf-8格式的,导致网页如果采用gb2312编码,显示正常,导出就乱码了.这种现象也同样经常出现在ajax的使用过程中. ajax ...
- 端午小长假--前端基础学起来04CSS选择器
定义: 选择器{ 样式: } 选择器指明{}中的样式的作用对象,即作用于网页中的哪些元素 <head><meta http-equiv="Content-Type" ...
- Java基础01 ------ 从HelloWorld到面向对象
Java是完全面向对象的语言.Java通过虚拟机的运行机制,实现“跨平台”的理念.我在这里想要呈现一个适合初学者的教程,希望对大家有用. "Hello World!" 先来看一个H ...
- Windows Azure 实操 —— 迁移本地SharePoint服务器到Azure
博客地址 http://blog.csdn.net/foxdave 注意:如果你是第二代虚拟机,那就别看这个了,老老实实在Azure上重新创建吧,Azure不支持第二代虚拟机. 写在之前,对Azure ...
- Linux文件管理系统
首先了解一般linux文件系统的构成. */usr/bin./bin : 存放所有用户可以执行的命令 */usr/sbin ./sbin :存放只有root可以执行的命令 */home : 用户缺省宿 ...
- POJ 1185 炮兵阵地(经典的状态压缩DP)
题意:中文题. 思路,经典的状态压缩题目. 由于列长比较小,我们可以以行为阶段用状态压缩来做. 由于攻击只占两个格,这样从行的角度看,第i行的炮兵只与前i-1和前i-2行有关系.这样如果用j,k,l分 ...
- hdu 2077
PS:汉诺塔问题....找规律...观察发现,先是小的移动到B,然后大的移动到C(两步),然后小的移动到C,完成.刚开始就以为是f(n)=2f(n-1)+2..然而,小的移动一步是需要f(n)=3f( ...
- 获取本机IP非127.0.0.1
protected function GetiP() { $preg="/\A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5] ...
- Chocolate_DP
Description In 2100, ACM chocolate will be one of the favorite foods in the world. "Green, oran ...
- List<T>转换为DataTable
List<info> infos = Dal.GetInfos(); DataTable dt = new DataTable(); dt.Columns.Add("cName& ...