`

ACM 2045 不容易系列之(3)—— LELE的RPG难题

    博客分类:
  • ACM
 
阅读更多

http://acm.hdu.edu.cn/showproblem.php?pid=2045

 

分析过程:

1)如果前F(N-1)是符合要求的涂发,即N-1和第一位是不同的,则N位只有一种颜色可以用 F(N-1)

2)如果前N-1是不符合要求的 即N-1和第一位相同,则除掉N-1后之前N-2个是符合要求的,这种情况下有N可以有两种涂发 所以 2*F(N-2)

 

发现 F(N) = F(N-1) + 2*F(N-2)

 

因为N<=50

用long类型不行,溢出了,应该用double

 

代码如下:

#include <stdio.h>

int main()
{
    int n,i;
    double a[100];
    a[0]=1;
    a[1]=3;
    a[2]=6;
    a[3]=6;
    for (i=4; i<54; i++) {
        a[i]=a[i-1]+2*a[i-2];
    }
    while (scanf("%d",&n)!=EOF) {
        printf("%.0f\n",a[n]);
    }
    return 0;
    
}
 
分享到:
评论

相关推荐

    The 36th ACM/ICPC Asia Regional Shanghai Site —— Online Contest

    The 36th ACM/ICPC Asia Regional Shanghai Site —— Online Contest Problem Set

    The 36th ACM/ICPC Asia Regional Dalian Site —— Online Contest

    The 36th ACM/ICPC Asia Regional Dalian Site —— Online Contest 注意,解压密码是:3.1415926535897932384

    ACM在计算机教学的应用研究——以C语言程序设计为例.pdf

    3. ACM竞赛模式与特点:ACM竞赛要求三名学生组成小组,在限定时间内解决一系列编程问题,并通过平台自动判题和排名。它考验的是学生的编程能力、团队合作和创新能力。 4. 教学方法和学习方式的改进:通过ACM竞赛...

    ACM模版下载——————

    3. **动态规划**:许多ACM问题可以通过动态规划求解,模版通常会包含一些基础和进阶的DP模板,例如斐波那契数列、最短路径、背包问题等。 4. **贪心算法**:在时间限制严格的ACM比赛中,贪心策略有时能快速得到最优...

    acm ————stl

    ### ACM中的STL #### 一、概述 标准模板库(Standard Template Library,简称STL)作为C++标准库的一部分,极大地提升了编程效率与代码质量。对于参与ACM(Association for Computing Machinery)程序设计竞赛的...

    acm图论.ppt————电子版_ppt版

    acm图论.ppt————电子版_ppt版

    ACM训练计划——指导篇

    【标题】"ACM训练计划——指导篇"揭示了这篇文档是关于ACM(国际大学生程序设计竞赛,International Collegiate Programming Contest)训练的详细指南。ACM竞赛是全球范围内一项著名的编程竞赛,旨在提升大学生的...

    HDU——ACM.zip

    【HDU——ACM.zip】压缩包文件是一个专门为准备ACM(国际大学生程序设计竞赛)集训而设计的资源集合,包含了多个关键算法领域的详细讲解。这个资源包旨在帮助参赛者提升算法理解与编程能力,涵盖了多项在算法竞赛中...

    ACM国际大学生程序设计竞赛系列讲座——通用搜索算法及实现

    ACM国际大学生程序设计竞赛系列讲座——通用搜索算法及实现

    ACM准备模板——堆排序模板

    在ACM(国际大学生程序设计竞赛)中,堆...总之,堆排序是ACM竞赛中不可或缺的工具之一,理解和掌握堆排序及其模板,能够提升你在竞赛中的竞争力。通过不断练习和应用,你将能够灵活运用堆排序解决各种复杂的排序问题。

    模板ACM———浙江大学与吉林大学

    【标题】:“模板ACM———浙江大学与吉林大学”指的是在ACM(国际大学生程序设计竞赛,International Collegiate Programming Contest)领域中,浙江大学和吉林大学所使用的编程模板或指南。这些模板通常包含了参赛...

    ACM——2131AC代码

    杭电ACM2131题c程序AC代码

    算法导论——acm

    有助算法入门的同学,对于想在acm程序设计上有所提高的同学是必选手册 。

    ACM课程论文——详解动态规划

    总的来说,动态规划是一种强大的工具,它在ACM竞赛中有着举足轻重的地位,也是计算机科学中不可或缺的算法之一。通过学习和实践动态规划,不仅可以提升解决问题的能力,也能为参加ACM竞赛和其他算法竞赛提供坚实的...

    ACM学习全系列教材

    **ACM学习全系列教材**是一份珍贵的学习资源,涵盖了ACM(国际大学生程序设计竞赛)所需的广泛知识。这份教材集合旨在帮助学习者系统性地掌握ACM竞赛所需的编程技能和算法理论,从而在竞赛中取得优异的成绩。下面将...

    ACM 入门——字符串处理及随机数

    在ACM竞赛或算法编程中,字符串处理和随机数生成是常见的任务,因此了解这些基础知识至关重要。下面将详细解释上述提到的一些字符串处理函数和随机数的生成方法。 首先,`memset`函数用于将内存区域初始化为特定值...

    c语言代码——ACM常用算法

    根据给定文件的信息,我们可以提炼出C语言中与ACM常用算法相关的几个核心知识点: ### 1. 大数阶乘 #### 函数定义: ```c int result = factorial(int n); ``` #### 参数说明: - `n`: 表示需要计算阶乘的整数。 ...

Global site tag (gtag.js) - Google Analytics