明知是burnside然而根本不会然后无耻地颓了题解后一脸傻气的我:

直接套公式???为啥方案数==等价类数量啊???

skyh:显然啊(狂笑)(hey wxy!他问为啥方案书等于等价类数量!)

wxy:显然啊

我:???

先不说为什么着色方案等于等价类的数量。先读

经过观察,题目给出的表面上是牌与牌间的映射操作

初步理解:一种着色方案下,牌组不断洗牌会出现多种颜色状态

     以上颜色状态之间相互变化只需要1次操作

       不同方案下,以上颜色状态不会重复

如果把牌看作元素,那么一个映射操作就是改变了牌的顺序,调换了一些牌的颜色

所以一张牌就是元素,置换给了,求牌的互相到达的组数就好了

我们看到这种 映射操作 满足单位元、逆元、封闭性、结合律,那么这些操作很可能构成了置换群

如果它们是置换群的话,我们可以想到它们对牌进行了操作,但是却在不同的颜色状态之间建立了相互转化的关系

回到初步理解:一种染色方案合法,必须满足它生成的颜色状态(们)在任何映射操作下封闭互化(能且仅能互相到达)

                                           (像不像等价类)

所以如果把题意再抽象一层...

define:元素:颜色状态,理由是映射操作使颜色状态具有了互化关系

     置换:映射操作造成的互化关系

     置换群:所有互化关系

     等价类:可以相互转化的颜色状态,一组等价类对应一种染色方案

     置换的不动点数量:在一个置换下,一个颜色状态中循环变化的一些牌可以是不动的,循环就是不动点。但是循环(们)真正对答案的贡献不是他们的量,而是他们内部选择同一种颜色,总体满足题目颜色要求的方案数(不是染色方案,而是在一个置换下,不会随此置换改变的  符合题目要求的 颜色状态数)

   (<-- dp)

搞懂了才能心安理得的套公式。

bzoj1004 card的更多相关文章

  1. 【bzoj1004】 HNOI2008—Cards

    http://www.lydsy.com/JudgeOnline/problem.php?id=1004 (题目链接) 题意 n张卡片,染成3种颜色,每种颜色只能染固定张数.给出一些洗牌方案,问染色方 ...

  2. Lesson 3 Please send me a card

    Text Postcards always spoil my holidays. Last summer, I went to Italy. I visited museums and sat in ...

  3. iOS - Card Identification 银行卡号识别

    1.CardIO 识别 框架 GitHub 下载地址 配置 1.把框架整个拉进自己的工程,然后在 TARGETS => Build Phases => Link Binary With L ...

  4. HDOJ 4336 Card Collector

    容斥原理+状压 Card Collector Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O ...

  5. Opensuse enable sound and mic card

    Install application pavucontrol Run pavucontrol You will see the configuration about sound card and ...

  6. 进监狱全攻略之 Mifare1 Card 破解

    补充新闻:程序员黑餐馆系统 给自己饭卡里充钱 ,技术是双刃剑,小心,小心! 前言 从M1卡的验证漏洞被发现到现今,破解设备层出不穷,所以快速傻瓜式一键破解不是本文的重点,年轻司机将从本文中获得如下技能 ...

  7. Card(bestcoder #26 B)

    Card Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  8. [OpenJudge 3061]Flip The Card

    [OpenJudge 3061]Flip The Card 试题描述 There are N× Ncards, which form an N× Nmatrix. The cards can be p ...

  9. [杂谈]交通工具orca card

    How and Where to Use the ORCA Card The Microsoft ORCA card provides unlimited rides on all buses, tr ...

随机推荐

  1. Tomcat部署项目的三个方法

    所需软件安装 要想在Tomcat中部署项目前提是先要搭建好Tomcat,搭建Tomcat就离不开以下软件包的安装配置,本次演示使用Linux平台 1.JDK软件包 JDK是一切java应用程序的基础, ...

  2. 02-05 scikit-learn库之线性回归

    目录 scikit-learn库之线性回归 一.LinearRegression 1.1 使用场景 1.2 代码 1.3 参数详解 1.4 属性 1.5 方法 1.5.1 报告决定系数 二.ARDRe ...

  3. Js获取宽高度的归纳集锦总结

    首先,先吓唬一下我们的小白们!在js中的描述宽高的可以细分有22种.属性根据不同的兼容性也分为五种 window.innerWidth //除去菜单栏的窗口宽度,与浏览器相关 window.inner ...

  4. github代码仓库提示:“We found a potential security vulnerability in one of your dependencies”

    问题描述: Github上传代码后出现这样的错误: We found a potential security vulnerability in one of your dependencies. A ...

  5. python编程基础之十七

    字符串:str1 = '123' str2 ="123" str3 = """123""" str4 = '''123' ...

  6. MAC 上的Phantomjs的安装和配置

    1.下载 http://phantomjs.org/download.html 选择mac版本下载 2.下载完成后,解压缩,然后放到自己的一个目录下面 例如:/usr/local/Phantomjs/ ...

  7. 算法学习之剑指offer(十一)

    一 题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. import java.util.*; ...

  8. 打造属于自己的 HTML/CSS/JavaScript 实时编辑器

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://blog.bitsrc.io/build-an-html-css-js-playgr ...

  9. Java编程思想——第17章 容器深入研究 读书笔记(二)

    五.List的功能方法 排除Collection已包含的方法外还增加了 boolean addAll(int index, Collection<? extends E> c);从索引位置 ...

  10. 生产环境下,MySQL大事务操作导致的回滚解决方案

    如果mysql中有正在执行的大事务DML语句,此时不能直接将该进程kill,否则会引发回滚,非常消耗数据库资源和性能,生产环境下会导致重大生产事故. 如果事务操作的语句非常之多,并且没有办法等待那么久 ...