15145641

摘要: 题意:给2*N的矩阵放满物品,共有M种物品,每种物品有无限个,同行列不能有相同种类的物品,问你有多少种放法。 思路:不用容斥原理也是可以解的,用对错排的递推式做出修改,以前的错排是N对N,现在多了M-N个,这里只介绍容斥原理做法。 容斥原理最重要的是处理好集合的关系,这个题目首先应该考虑把一行放满, 阅读全文
posted @ 2017-11-30 12:21 icode-xiaohu 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 额,这个题也做了好几天了,中间停停断断的…… 一开始写是超时,想到了正确的思路,用dp[i][j]代表到i个珠子颜色为j的方案数,但是超时了,因为我细节处理的太差,我先枚举了初始状态,然后又枚举了结束状态,多了两个m,因为我想的是判断最后一个和第一个的关系,但其实完全可以让矩阵帮助我多做一次运算,找 阅读全文
posted @ 2017-11-26 20:42 icode-xiaohu 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 这个题目跟UVA 项链的题目是一样的,同样适用Burnside定理计数,3*3*3魔方旋转是一个经典旋转模型,有4种旋转方案,对着魔方转一下最好 #include<iostream> #include<cstdio> #include<cstring> using namespace std; #d 阅读全文
posted @ 2017-11-23 21:06 icode-xiaohu 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 题意: 分给出a,b,c个颜色各不相同的珠子,穿成一条长度为a+b+c的项链,在翻转和旋转的条件下,能够形成多少等价类。 分析: 这题有数量限制,所以直接搬Polya公式不行,需要用到Burnside的定理L = (Z1 + Z2 + .... Zk) / |G| (Zk为置换gk(gk∈G)的方案 阅读全文
posted @ 2017-11-23 14:23 icode-xiaohu 阅读(340) 评论(0) 推荐(0) 编辑
摘要: G - Graph Reconstruction 可图判定问题 首先应用Havel-hakimi定理判定该度数序列是否可图,队友A掉这道题以后,我学习了一下Havel-hakimi定理,下面简单介绍并且证明一下。 定理应用场景:给出节点的度数序列,判断该序列是否为一个具体图或者简单图的度数序列(与此 阅读全文
posted @ 2017-11-23 12:56 icode-xiaohu 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 题意:给你N种颜色的珠子,个数不限,串成一个长度为N的项链,经过旋转以后,问能形成多少等价类 分析:套用Polya定理的计数公式即可,题目中的旋转操作可以形成N个置换,假设旋转了i个珠子,那么这个置换的置换环个数为gcd(i,N),但是这里N比较大,需要枚举N的所有因子然后欧拉函数优化。这个题当时我 阅读全文
posted @ 2017-11-19 17:16 icode-xiaohu 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 这个题目的做法有很多种,大部分选择了找循环节的做法,但是个人感觉这样的做法有点暴力,所以使用了置换开方的做法来解决这个问题,时间复杂度O(n)。 首先评价一波:是个好题! 然后开始分析:给你N张卡片和一个洗牌机,如果位置I上的牌是J,位置J上的牌是K,那么洗牌一次后位置I上的牌就是K。首先建立一个位 阅读全文
posted @ 2017-11-19 16:58 icode-xiaohu 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 函数及变量的解释: WSADATA : 存储由WSAStartup函数返回的数据。 int WSAStartup( WORD wVersionRequested, LPWSADATA lpWSAData); 启动异步套接字,加载运行库 wVersionRequest : 高阶字段表示小版本号,低位字 阅读全文
posted @ 2017-04-29 18:08 icode-xiaohu 阅读(727) 评论(1) 推荐(0) 编辑
摘要: A题大意,不得不说当时后台数据多水(被人hack)。 从大到小遍历,不断累加上面的值,如果值变小了,就退出。 #include<iostream> #include<cstdio> #include<cstring> #include<map> #include<algorithm> using n 阅读全文
posted @ 2017-01-25 00:01 icode-xiaohu 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 队友的建议,让我去学一学kuangbin的基础dp,在这里小小的整理总结一下吧。 首先我感觉自己还远远不够称为一个dp选手,一是这些题目还远不够,二是定义状态的经验不足。不过这些题目让我在一定程度上加深了对dp的理解,但要想搞好dp,还需要多多练习啊。 HDU - 1024 开场高能 给出一个数列, 阅读全文
posted @ 2017-01-13 22:43 icode-xiaohu 阅读(301) 评论(0) 推荐(0) 编辑