HDU2045

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2045

思路:n==1时,有3种涂法;n==2时,有6种涂法;n==3时,有6种涂法;当n>=4时就要分两种情况讨论:1.当第n-1个和第1个不是同种颜色,有ans(n-1)种涂法。2.当第n-1个和第1个是同种颜色,有2ans(n-2)涂法。即 ans(n)=ans(n-1)+2ans(n-2)
由于题目中n最大为50,我使用 __int64,printf时使用的占位符为%I64d。

代码:

#include <stdio.h>
int main()
{
    int n,i;
    while (scanf("%d", &n) != EOF)
    {
        __int64 ans[55];
        ans[1] = 3; ans[2] = 6;ans[3] = 6;
        for (i = 4; i <= n; i++)
        {
            ans[i] = ans[i - 1] + 2*ans[i - 2];
        }
        printf("%I64d\n", ans[n]);
    }
    return 0;
}


题外
探究 __int64 与 long long 类型的区别:



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 递推思路:记f(n)为n个格子的方法数目。在前面n-1个格子已经调好的情况下,填第n个格子。满足条件的n个格子的填...
    Amosasas阅读 344评论 0 0
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,161评论 6 13
  • 转自:http://www.cnblogs.com/Ash-ly/p/5452580.html概念:哈密顿图:图G...
    噩噩噩噩噩v阅读 1,232评论 0 1
  • 关于IT的英语 win10 系统 win + x apps and features 应用和功能 feature:...
    我要写小说阅读 4,260评论 0 1
  • 定点小数运算 来自:http://www.eepw.com.cn/article/17893.htm 在DSP世界...
    郝宇峰阅读 9,871评论 0 2

友情链接更多精彩内容