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 ...
随机推荐
- 关于Integer缓冲
默认的时候,-128--127范围内的数会被缓冲 但是jvm启动的时候可以修改启动参数-Djava.lang.Integer.IntegerCache.high=2000 来修改上限,但是下限是不可以 ...
- 传Windows 9预览版今秋发布
据ZDNet长期关注微软动态的资深人士玛丽•乔•弗利(Mary Jo Foley)称,Windows 9预览版将会在9月或者10月推出.按照这一进度,代号为“Threshold’”的Windows 9 ...
- android 单选、多选弹出菜单
菜单单选窗口: import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInte ...
- (转)如何在Windows上安装多个MySQL
原文:http://www.blogjava.net/hongjunli/archive/2009/03/01/257216.html 如何在Windows上安装多个MySQL 本文以免安装版的mys ...
- Nginx 安装编译配置
./configure --prefix=/usr/local/nginx-1.8.0 --with-http_ssl_module --with-http_spdy_module --with-ht ...
- HTML的常用标签
<!--编写HTML常用的标签 文字版面的编辑 格式标签 文本标签 超链接和锚点 图像和图像地图 --> <!DOCTYPE html PUBLIC "-//W3C//DT ...
- PhP访问mysql数据库的基本方式
一,查询 <?php$conn= mysql_connect("127.0.0.1","lanou12","lanou12");$fi ...
- UI 网络程序
一,从网络地址获取一张图片 -(void)didClickDownLoad:(id)sender{ NSLog(@"%@",[NSDate date].description ...
- IOS 作业项目(4)步步完成 画图 程序(中)
一,承接上文,继续本文 [UIButton buttonWithType:UIButtonTypeRoundedRect]; 如此声明的按钮才会有点击闪动的效果!如果直接frame方式声明就不会有. ...
- Mercurial使用简单介绍【转】
Mercurial可以使异地开发进行统一的版本管理,比如一个项目有一部分人在银行内部开发无法用外网,另一部分人在公司开发,这两部分人需要一个统一的版本管理工具,mercurial这时候可以发挥作用 m ...