<address id="dfjpl"></address>
<sub id="dfjpl"></sub>

      <sub id="dfjpl"></sub>

        <address id="dfjpl"></address>

        <address id="dfjpl"></address>

        CF C.Ivan the Fool and the Probability Theory【思维·构造】

        题目传送门

        题目大意:

        一个$n*m$的网格图,每个格子可以染黑色、白色,问每个格子最多有一个相邻格子颜色相同的涂色方案数
        $n,m<=1e5$

        分析:

        首先,考虑到如果有两个相邻的格子颜色相同,那么这两行/列的格子状态就确定了。比如:

        分享图片

         

         

         在中间两个爱心格子被确定的情况下,第二列和第三列的涂色情况就已经被确定了。实际上,第一列和第四列涂的颜色也确定了。(最后这句话我们留着待会儿分析)

        分享图片

         

         

         同理,在中间两个星星确定的时候,第二行和第三行的涂色情况也唯一确定。实际上,第一行和第四列涂的颜色也确定了。

         


        假如说在一个方格中,既有横着出现的两个连续的一样颜色的格子,也有竖着出现的两个连续的一样颜色的格子,就像这样:

        分享图片

         

         分享图片

         

         分享图片

         

         

         

        那么一定会产生矛盾,无论怎么挪都会产生矛盾。(橙色的部分是既需要用灰色,也需要用蓝色涂的格子,是矛盾的地方)

        所以,在一种着色方案中,这种相邻两个颜色一样的情况只会在一个方向中出现,我们只需要考虑一个方向那么多行的方案数,另外一个方向的同理就好。

         


         

        如果已经确定相邻两个颜色一样的格子出现的方向(为方便讨论,下面我们假设这两个格子是竖着的),那么每一行的格子颜色一定是交错的,两行之间要么一样,要么颜色相反,而且颜色一样的不能连着出现3次及以上。

        在第一行确定的情况下,如果要求每一个格子的每个相邻格子的颜色都和他不一样,那么这是一个棋盘染色,就唯一确定了。

        但是,按照这道题的条件来说的话,后面的格子可以有两行,也可以只有一行。(就是一次性确定两行或一次性确定一行)

        Like this:

        分享图片

         

         

         

        分享图片

         

         

         设$f[i]$表示铺到第$i$行(前$i$行)的方案总数,那么递推式就是$f[i]=f[i-1]+f[i-2]$

        (初始化$f[0]=1$是一开始就是两行连着一样的情况)

        答案就是$f[n]$。

        然后,还有相邻两个颜色一样的格子是竖着的,方案数就是$f[m]$,这两类在前面已经说过没有交集,答案就是$f[n]+f[m]$

        然后,棋盘染色的情况在两种情况中都被计算了,所以答案要减1。

        最后,黑白颜色可以反过来,所以乘2.

        做完了,$Nice!$

        分享图片
         1 /*
         2 ID: Starry21               
         3 */ 
         4 #include<iostream>
         5 #include<string>
         6 #include<cstdio>
         7 #include<cstring>
         8 #include<map>
         9 #include<algorithm>
        10 using namespace std;
        11 #define N 100005
        12 #define ll long long
        13 #define MOD 1000000007
        14 int n,m;
        15 ll f[N];
        16 int main()
        17 {
        18     scanf("%d %d",&n,&m);
        19     f[0]=f[1]=1;
        20     for(int i=2;i<=max(n,m);i++)
        21         f[i]=(f[i-1]+f[i-2])%MOD;
        22     printf("%lld\n",2*((f[n]+f[m])%MOD-1+MOD)%MOD);
        23     return 0;
        24 }
        代码贼短
        相关文章
        相关标签/搜索
        蓝月亮天下彩免费资枓大全年2019开奖结果特马料查询香港马会开奖结果历史纪录在线查询网 延边| 长武县| 明溪县| 丽江市| 若羌县| 富顺县| 新乡县| 通海县| 阜城县| 宁蒗| 视频| 顺义区| 昌宁县| 荥经县| 涪陵区| 信阳市| 黑山县| 大田县| 长岛县| 肇庆市| 沙田区| 肇庆市| 衡东县| 军事| 榆树市| 安岳县| 长治市| 子长县| 保定市| 临夏县| 抚宁县| 和田县| 三都| 旌德县| 吕梁市| 达州市| 枣阳市| 永平县| 巍山| 渝北区| 罗源县| 通海县| 高邮市| 徐州市| 关岭| 察雅县| 新津县| 南华县| 馆陶县| 老河口市| 都安| 阜宁县| 灵寿县| 隆回县| 邢台市| 岫岩| 广宗县| 兴化市| 台南县| 工布江达县| 新和县| 镇巴县| 吉木萨尔县| 洛扎县| 弥勒县| 中西区| 香河县| 台北市| 承德市| 尼木县| 且末县| 大安市| 西充县| 改则县| 闻喜县| 精河县| 长海县| 隆回县| 宁津县| 平舆县| 威远县| 万载县| 分宜县| 江永县| 峨山| 宿松县| 柳江县| 清水河县| 丰台区| 新巴尔虎左旗| 弥勒县| 新巴尔虎左旗| 大安市| 沙洋县| 五常市| 迭部县| 敖汉旗| 青海省| 会昌县| 交口县| 舟山市| 曲麻莱县| 莎车县| 凤阳县| 昌宁县| 镇赉县| 台南市| 民县| 昭通市| 赤峰市| 青岛市| 龙岩市| 桃园市| 酉阳| 大关县| 安西县| 兰溪市| 阿拉善左旗| 华宁县| 通江县| 延寿县| 宝坻区| 子长县| 沽源县| 长海县| 凤翔县| 思茅市| 白沙| 石城县| 高台县| 丹巴县| 佛山市| 沧州市| 延庆县| 孝昌县| 庄河市| 牙克石市| 定安县| 伊宁市| 新蔡县| 襄樊市| 项城市| 普兰店市| 霞浦县| 永修县| 佛坪县| 太谷县| 怀化市| 逊克县| 晋宁县| 徐水县| 县级市| 科技| 凌海市| 淄博市| 泊头市| 高州市| 郓城县| 余江县| 玉田县| 青川县| 孝昌县| 库尔勒市| 益阳市| 芦溪县| 泰兴市| 永川市| 梓潼县| 湘乡市| 巴中市| 新安县| 长丰县| 吉林市| 土默特左旗| 青龙| 蒙山县| 石门县| 罗江县| 诸暨市| 贵德县| 平山县| 崇信县| 浦江县| 海伦市| 文安县| 周至县| 章丘市| 锡林浩特市| 泰和县| 乌拉特后旗| 花莲市| 拉萨市| 吉木乃县| 微山县| 读书| 阳原县| 抚远县| 合肥市| 大英县| 洛川县| 临夏县| 习水县| 石首市| 芜湖市| 西城区| 普定县| 肃宁县| 夏邑县| 友谊县| 沂水县| 洪泽县| 华安县| 公主岭市| 扎赉特旗| 柏乡县| 亚东县| 金寨县| 莲花县| 铁岭市| 汝阳县| 拉萨市| 湘潭县| 阿瓦提县| 社旗县| 湄潭县| 闽清县| 屏边| 洪雅县| 潜江市| 定兴县| 镇沅| 石家庄市| 个旧市| 西乌珠穆沁旗| 万州区| 皋兰县| 富裕县| 年辖:市辖区| 库车县| 犍为县| 乐业县| 龙泉市| 尉犁县| 清镇市| 民权县| 漾濞| 贞丰县| 凯里市| 朝阳市| 沙坪坝区| 安平县| 盐边县| 孝感市| 旌德县| 维西| 惠东县| 古丈县| 高尔夫| 石城县| 长葛市| 榆中县| 卢氏县| 郁南县| 攀枝花市| 浦城县| 札达县| 遵义县| 航空| 兴山县| 从化市| 长垣县| 深泽县| 逊克县| 县级市| 开远市| 嫩江县| 黄大仙区| 道孚县| 自贡市| 恭城| 色达县| 建宁县| 重庆市| 丰城市| 焉耆| 库车县| 金堂县| 枣强县| 富民县| 五华县| 张家界市| 西安市| 岱山县| 梁山县| 丰城市| 辽阳县| 揭东县| 桃江县| 佛教| 法库县| 轮台县| 涞水县| 荥经县| 潞西市| 浑源县| 吉木萨尔县| 子洲县| 杭锦后旗| 蒙自县| 银川市| 天祝| 高尔夫| 巨鹿县| 彭山县| 长垣县| 桂平市| 图们市| 绥芬河市| 榆树市| 瑞昌市| 文登市| 庆安县| 南靖县| 浪卡子县| 岱山县| 凌源市| 上饶市| 义乌市| 瓦房店市| 武夷山市| 高安市| 邯郸市| 夹江县| 平江县| 石首市| 湄潭县| 汝阳县| 淮阳县| 宁化县| 琼海市| 日喀则市| 玛纳斯县| 泗洪县| 定襄县| 屏南县| 新巴尔虎左旗| 汉阴县| 凌云县| 辉县市| 玛纳斯县| 咸丰县| 南江县| 广平县| 洞头县| 个旧市| 宁陕县| 西安市| 鄂托克前旗| 合川市| 建昌县| 海口市| 磐石市| 海门市| 沙洋县| 中西区| 盐山县| 宁都县| 贵港市| 南漳县| 邵阳市| 鹤峰县| 金山区| 思茅市| 苗栗市| 大姚县| 秦皇岛市| 方城县| 公安县| 凯里市| 托里县| 开远市| 米泉市| 新丰县| 阜城县| 长顺县| 芷江| 云阳县| 周宁县| 文昌市| 桦甸市| 常宁市| 聊城市| 永安市| 凤台县| 娄烦县| 香港| 兰州市| 鄂州市| 闽清县| 永清县| 旺苍县| 青岛市| 西乡县| 武功县| 稻城县| 巫溪县| 汉寿县| 通许县| 玉山县| 桦甸市| 柳江县| 阳春市| 正蓝旗| 泾阳县| 宜兴市| 郯城县| 长乐市| 崇州市| 锦屏县| 台湾省| 高清| 浙江省| 台湾省| 达拉特旗| 同德县| 双桥区| 沧州市| 牙克石市| 贡觉县| 阿瓦提县| 唐河县| 阜阳市| 大田县| 无极县| 丰镇市| 察隅县| 海林市| 天镇县| 灵台县| 集贤县| 贵港市| 蒲城县| 新乐市| 永川市| 南郑县| 教育| 丹阳市| 建昌县| 叶城县| 渭南市| 平湖市| 叶城县| 伊川县| 札达县| 乌海市| 长岭县| 大悟县| 咸阳市| 安远县| 恩施市| 南乐县| 砀山县| 满洲里市| 克拉玛依市| 哈尔滨市| 股票| 绥中县| 德保县| 剑河县| 民乐县| 景谷| 社旗县| 绿春县| 盐边县| 翁源县| 双牌县| 军事| 舞阳县| 介休市| 当雄县| 黎城县| 赣榆县| 尼玛县| 贡山| 卓尼县| 灌阳县| 浠水县| 温州市| 乌兰浩特市| 泗水县| 肥城市| 搜索| 东莞市| 广德县| 商南县| 龙口市| 富顺县| 绥宁县| 沧州市| 西城区| 武汉市| 乾安县| 德令哈市| 沙雅县| 南阳市| 连南| 西林县| 岚皋县| 巩义市| 兴文县| 三亚市| 静宁县| 铜梁县| 澄迈县| 罗江县| 当涂县| 津南区| 贵阳市| 五台县| 福泉市| 江华| 岳池县| 绵阳市| 丽江市| 宜兰市| 拉孜县| 巴青县| 蒲城县| 淮阳县| 庆元县| 多伦县| 砚山县| 通河县| 黄梅县| 兴文县| 广南县| 白水县| 武功县| 沙湾县| 元氏县| 玉树县| 宝兴县| 木兰县| 丘北县| 京山县| 印江| 渝中区| 青海省| 林西县| 大名县| 田阳县| 韶关市| 遂溪县| 平度市| 上高县| 温州市| 靖远县| 徐闻县| 宁河县| 临安市| 项城市| 闸北区| 潼南县| 呼图壁县| 荔浦县| 永德县| 东源县| 郑州市| 阿克陶县| 修水县| 青河县| 溧阳市| 涟源市| 武强县| 钟祥市| 子洲县| 满城县| 珲春市| 光泽县| 海城市| 平乡县| 西藏| 西乌珠穆沁旗| 扎兰屯市| 泰安市| 高邮市| 洛川县| 台安县| 防城港市| 遂平县| 谢通门县| 道真| 嘉峪关市| 长葛市| 新泰市| 翁源县| 长乐市| 海淀区| 宝兴县| 昌乐县| 辽阳县| 宣恩县| 原平市| 确山县| 汝城县| 潮州市| 巨野县| 五华县| 天柱县| 嘉鱼县| 正蓝旗| 合作市| 双牌县| 屏东市| 新昌县| 山丹县| 达拉特旗| 东港市| 繁昌县| 永顺县| 安乡县| 金川县| 崇左市| 达孜县| 天门市| 赤峰市| 白银市| 昭通市| 五华县| 阳高县| 南丰县| 华池县| 抚顺县| 民县| 赤城县| 赤城县| 东丽区| 博乐市| 若尔盖县| 通化市| 和静县| 淅川县| 沁水县| 建始县| 博乐市| 鄄城县| 江口县| 拉萨市| 苗栗县| 星座| 威海市| 蓬莱市| 新昌县| 靖江市| 古田县| 沧源| 天峻县| 措勤县| 连平县| 工布江达县| 洛川县| 海淀区| 灌云县| 黄山市| 长沙市| 万山特区| 临澧县| 九龙坡区| 九台市| 康马县| 西峡县| 军事| 裕民县| 广昌县| 岐山县| 友谊县| 揭西县| 莎车县| 淮南市| 洞口县| 安乡县| 廉江市| 永丰县| 阿尔山市| 都匀市| 尖扎县| 上蔡县| 石嘴山市| 晋江市| 墨脱县| 澜沧| 古蔺县| 汾西县| 漳州市| 兴安盟| 忻州市| 呼和浩特市| 阜南县| 基隆市| 务川| 五家渠市| 勃利县| 陇川县| 介休市| 石渠县| 太仆寺旗| 滦南县| 巴彦县| 巢湖市| 泰州市| 德惠市| 邯郸县| 辽阳县| 库车县| 富民县| 应城市| 黄山市| 广安市| 芜湖县| 郁南县| 施甸县| 阿拉善左旗| 都匀市| 崇信县| 镇赉县| 象州县| 福海县| 太仆寺旗| 安顺市| 永顺县| 兴宁市| 鸡泽县| 永川市| 锡林浩特市| 玉树县| 张家港市| 天台县| 涟源市| 绥德县| 达拉特旗| 永寿县| 延边| 民县| 萨嘎县| 巴东县| 崇文区| 绥江县| 福州市| 平顺县| 郧西县| 台湾省| 扎兰屯市| 车致| 梁平县| 万宁市| 临武县| 进贤县| 齐齐哈尔市| 安阳市| 宁波市| 城步| 河西区| 长寿区| 新竹市| 南汇区| 武功县| 武川县| 内黄县| 精河县| 中牟县| 安阳市| 开原市| 伊通| 舒兰市| 保德县| 河北区| 孟州市| 滁州市| 永年县| 桂平市| 牙克石市| 太康县| 甘孜| 剑川县| 黄大仙区| 开远市| 永德县| 青神县| 利川市| 绥滨县| 临夏县| 玉溪市| 汝南县| 阿克| 清水河县| 进贤县| 丹棱县| 贺兰县| 迁安市| 金山区| 宜丰县| 新余市| 同江市| 深泽县| 南安市| 南岸区| 杭锦后旗| 博白县| 牙克石市| 竹溪县| 阿瓦提县| 和林格尔县| 垫江县| 米易县| 长宁县| 瓮安县| 满洲里市| 河北区| 阜康市| 榆中县| 永平县| 南澳县| 榆树市| 云阳县| 黄大仙区| 新竹市| 昆山市| 菏泽市| 治县。| 渝中区| 长武县| 阆中市| 内黄县| 龙南县| 象山县| 格尔木市| 金门县| 军事| 凌源市| 仁寿县| 临安市| 乐至县| 张北县| 界首市| 安陆市| 堆龙德庆县| 东乡县| 安远县| 宜丰县| 永泰县| 吉林市| 吉木乃县| 弋阳县| 景泰县| 武汉市| 伊春市| 安乡县| 金昌市| 邵东县| 文山县| 图木舒克市| 西乌珠穆沁旗| 淮南市| 浦县| 集安市| 航空| 池州市| 怀远县| 正宁县| 茂名市| 台南县| 吉安市| 靖远县| 文成县| 从化市| 岑巩县| 泸定县| 沾益县| 北流市| 剑河县| 比如县| 和平县| 龙井市| 霍州市| 遵义市| 庆云县| 丰台区| 贵阳市| 镇坪县| 肥乡县| 淄博市| 雅江县| 英吉沙县| 长阳| 双柏县| 册亨县| 上高县| 五指山市| 吉安市| 贵南县| 阿坝县| 双流县| 武陟县| 库尔勒市| 富源县| 大方县| 茌平县| 石家庄市| 福州市| 班戈县| 谢通门县| 台江县| 湟源县| 文昌市| 彭山县| 彭泽县| 库车县| 仪陇县| 大同县| 越西县| 拜泉县| 邛崃市| 泾川县| 岢岚县| 绥化市| 临漳县| 遂昌县| 舒兰市| 嫩江县| 万年县| 交口县| 宜良县| 集贤县| 綦江县| SHOW| 齐齐哈尔市| 焉耆| 无极县| 安阳市| 叙永县| 天津市| 辽宁省| 普兰店市| 许昌县| 长汀县| 额济纳旗| 大姚县| 镇沅| 尉氏县| 鄂伦春自治旗| 辽阳市| 互助| 新民市| 成武县| 犍为县| 酒泉市| 洪泽县| 新郑市| 宿州市| 余江县| 大同县| 山东| 长垣县| 清水河县| 西畴县| 朝阳县| 黄平县| 上高县| 石林| 霍林郭勒市| 教育| 商南县| 济源市| 屯昌县| 轮台县| 耿马| 荔波县| 邓州市| 昌乐县| 常州市| 稷山县| 镇安县| 武川县| 合阳县| 巩留县| 无极县| 柘荣县| 建始县| 积石山| 伽师县| 玉田县| 玛沁县| 聂拉木县| 襄樊市| 浙江省| 凤城市| 交城县| 山丹县| 吉安市| 深水埗区| 上林县| 旬阳县| 沽源县| 铁岭县| 临西县| 黄浦区| 桐庐县| 姜堰市| 北安市| 峨山| 唐河县| 乐亭县| 正宁县| 阳东县| 太湖县| 皋兰县| 阳江市| 江华| 盐池县| 永济市| http://wap.bo2020audits.fun http://m.bo2020wheels.fun http://wap.jvz1j0r1o.fun http://wap.gz1980pressurec.fun http://www.yqo3j5rl4v.fun http://wap.yqo8j8rl0v.fun http://m.gz1980logc.fun http://wap.yqo4j1rl0v.fun http://m.gz1980requestc.fun http://m.bo2020chains.fun http://www.yqo4j8rl4v.fun http://wap.yqo7j2rl8v.fun http://m.gz1980exchangec.fun http://www.bo2020proofs.fun http://wap.bo2020strips.fun http://wap.yqo0j8rl8v.fun http://www.gz1980rapec.fun http://wap.gz1980radioc.fun http://m.bo2020wars.fun http://www.yqo3j8rl9v.fun http://wap.yqo1j6rl3v.fun http://www.gz1980doctorc.fun http://wap.gz1980zerchandisec.fun http://wap.jvz0j5r0o.fun http://m.gz1980returnc.fun