组合数学题 Codeforces Round #108 (Div. 2) C. Pocket Book
题目传送门
1 /* 2 题意:每一次任选i,j行字符串进行任意长度前缀交换,然后不断重复这个过程,问在过程中,第一行字符串不同的个数 3 组合数学题:每一列不同的字母都有可能到第一行,所以每列的可能值相乘取模就行了。这题主要坑在题意理解上。。。 4 */ 5 #include <cstdio> 6 #include <algorithm> 7 #include <cstring> 8 #include <cmath> 9 #include <map> 10 using namespace std; 11 12 typedef long long ll; 13 const int MAXN = 1e2 + 10; 14 const int INF = 0x3f3f3f3f; 15 const int MOD = 1e9 + 7; 16 char s[MAXN][MAXN]; 17 int a[MAXN]; 18 map<char, int> cnt[MAXN]; 19 20 int main(void) //Codeforces Round #108 (Div. 2) C. Pocket Book 21 { 22 // freopen ("D.in", "r", stdin); 23 24 int n, m; 25 while (scanf ("%d%d", &n, &m) == 2) 26 { 27 memset (a, 0, sizeof (a)); 28 for (int i=1; i<=m; ++i) cnt[i].clear (); 29 scanf ("%s", s[1] + 1); 30 for (int i=2; i<=n; ++i) 31 { 32 scanf ("%s", s[i] + 1); 33 } 34 35 for (int j=1; j<=m; ++j) 36 { 37 for (int i=1; i<=n; ++i) 38 { 39 if (cnt[j][s[i][j]] == 0) 40 { 41 cnt[j][s[i][j]] = 1; a[j]++; 42 } 43 } 44 } 45 46 ll ans = 1; 47 for (int i=1; i<=m; ++i) 48 { 49 ans = (ans * a[i]) % MOD; 50 } 51 printf ("%I64d\n", ans); 52 } 53 54 return 0; 55 }
转载于:https://www.cnblogs.com/Running-Time/p/4656720.html
组合数学题 Codeforces Round #108 (Div. 2) C. Pocket Book相关推荐
- Codeforces Round #108 (Div. 2)
Codeforces Round #108 (Div. 2) C. Pocket Book 题意 给定\(N(N \le 100)\)个字符串,每个字符串长为\(M(M \le 100)\). 每次选 ...
- 组合计数 ---- Codeforces Round #370 (Div. 2)D. Memory and Scores[dp]
题目大意:Memory 和 Lexa分别取数,取ttt轮,每一轮取的数字的范围为[−k,k][−k,k][−k,k],并且将取的数字加他们的得分,问有多少种方案Memory的得分严格大于Lexa.Me ...
- Educational Codeforces Round 108 (Rated for Div. 2)-B. The Cake Is a Lie-题解
目录 Educational Codeforces Round 108 (Rated for Div. 2)-B. The Cake Is a Lie Problem Description Inpu ...
- Codeforces Round #630 (Div. 2) E. Height All the Same 排列组合
传送门 文章目录 题意: 思路: 题意: 思路: 由于n,mn,mn,m都很大,不难猜到这是一个公式题. 首先化简题目中的两个操作,第二个操作就是可以让奇偶性相同的位置的高度相同.第一个操作虽然是改变 ...
- Codeforces Round #747 (Div. 2)题解
Codeforces Round #747 (Div. 2)题解 (本博客将持续更新以后每场CF div2的题解,喜欢ACM.OI的小伙伴记得点个关注哟) 昨天夜晚刷网络流刷入迷了,渐渐就忘记了我还要 ...
- Codeforces Round #433(Div. 2) D. Jury Meeting(贪心)
题目链接:Codeforces Round #433(Div. 2) D. Jury Meeting 题意: 有n个城市,每个城市有一个人,现在要让这些人来0号城市在一起k天,然后回去. 现在有m个日 ...
- Codeforces Round #653 (Div. 3)(A, B, C, D, E1详解)
Codeforces Round #653 (Div. 3) Required Remainder Thinking(binary search) 既然是找最大值问题,我又懒得去推式子,于是我直接就上 ...
- Codeforces Round #643 (Div. 2)(A, B, C, D, E)
Codeforces Round #643 (Div. 2) Sequence with Digits 思路 一道暴力题,猜想在某一步一定会出现0,于是怀着忐忑提交了代码,结果还真的是这样. 代码 # ...
- Codeforces Round #225 (Div. 1) E. Vowels 容斥 + sosdp
传送门 文章目录 题意: 思路: 题意: 给你nnn个长度为333的串,串的每个字母都在a−za-za−z范围内,定义一个串合法当且仅当这个串中含有至少一个元音字母.现在他忘记了元音字母都有那几个,显 ...
最新文章
- java语言中数值自动转换的优先顺序
- Cisco IOS的故障恢复方法
- wpf prism IRegionManager 和IRegionViewRegistry
- FZU 2214 Knapsack problem(背包问题)
- 6条策略提高mysql查询速度 潇湘博客
- 使用Mocks进行需求驱动的软件开发
- ExtJs2.0学习系列(5)--Ext.FormPanel之第二式
- Nginx Unit 1.8.0 发布,动态 Web 应用服务器
- 使用TortoiseSVN下载source force的源代码
- .net core读取appsettings.json配置信息、自定义json文件、自定义xml文件
- 颜值大比拼,用数据告诉你中国哪里美女多?
- word2010公式编辑器 格式设置
- Android JVM和DVM的区别
- proftpd ldap mysql_安装proftpd+ldap报错
- COGNOS安装笔记
- 计算机二级C语言中isdigit,C使用带字符串的标准算法,带有isdigit的count_if,函数转换...
- win7卸载mcafee
- 基于JavaWeb的校友录同学录管理系统
- 水墨简静态PPT模板
- LeetCode78-子集
热门文章
- python 安卓模拟点击_python模拟点击在ios中实现的实例讲解
- cppunit linux,Linux中使用CppUnit工具
- java文件上传_Java文件上传细讲
- 野火linux核心板原理图,野火_f429挑战者_核心板_原理图_v2 1.pdf
- 自动化测试框架cucumber_基于Cucumber和Testng的WebUI自动化测试方法与流程
- 人工智能助力全国大学智能车竞赛
- 第16届智能车竞赛参赛队员提问-05-24
- java 反射遍历_java使用反射遍历类的字段
- oracle数据库中insert,【Oracle】sql插入之 insert all、insert first
- mysql myasam_MySQL锁(MyISAM和InnoDB)