题意:

分析:

容易想到先把T数组按位置和对应权值建一个有向图(类似置换群那种指法)

然后图建完了,如果C[]里面都是2,那显然只能凑出那些偶数,奇数是不能凑出来的

如果C[]有1有2呢?

事实上是可以凑出所有自然数的……

找一个含有数字1的棒棒糖图形(先一条链,后一个环)

1)如果环中全是2,没有1

   从起点一直走下去一定是这样一个情况.......12222222222.....

   我们发现可以根据12222222.....来凑出所有数

2)如果环中有1,那么我们可以用数学归纳法来证明,假设1~x-1都能凑出来

  那么对于我们x-1时候的答案,总和差1,我们可以让它右边界扩展:

    如果进来了一个1,那么ok,凑出来了;

    如果没有,则进来的是2,我们让左边出来一个,如果出来的是1,那么ok,否则则继续进行操作

  我们发现这个操作是可以有限次结束的,因为如果无限次结束,那么就说明一直进出的都是222222,说明我们陷入了一个只有2的循环,但是这种情况是在环中有1的情况下的,所以是不会无限次进行的

于是就得出了一个神奇的结论:如果C[]中有1,那么所有正整数询问都可以凑出来,如果没有,那么只能凑出那些正偶数询问

hdu4696 Answers(循环节+找规律)的更多相关文章

  1. HDU 1005 Number Sequence【斐波那契数列/循环节找规律/矩阵快速幂/求(A * f(n - 1) + B * f(n - 2)) mod 7】

    Number Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  2. hdoj1005(循环,找规律)

    Problem Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1 ...

  3. HDU - 6444 Neko's loop(循环节+最大子段和)

    http://acm.hdu.edu.cn/showproblem.php?pid=6444 题意 一个有n个数的环,每次循环走k步,走到每个点都有具体的权值,问在任意点出发最多走m步的情况下,一开始 ...

  4. hdu6038[找规律+循环节] 2017多校1

    /*hdu6038[找规律+循环节] 2017多校1*/ #include<bits/stdc++.h> using namespace std; typedef long long LL ...

  5. A Simple Problem with Integers 循环节 修改 平方 找规律 线段树

    A Simple Problem with Integers 这个题目首先要打表找规律,这个对2018取模最后都会进入一个循环节,这个循环节的打表要用到龟兔赛跑. 龟兔赛跑算法 floyed判环算法 ...

  6. 特征根法求通项+广义Fibonacci数列找循环节 - HDU 5451 Best Solver

    Best Solver Problem's Link Mean: 给出x和M,求:(5+2√6)^(1+2x)的值.x<2^32,M<=46337. analyse: 这题需要用到高中的数 ...

  7. Codeforces Round #450 (Div. 2) B. Position in Fraction【数论/循环节/给定分子m 分母n和一个数c,找出c在m/n的循环节第几个位置出现,没出现过输出-1】

    B. Position in Fraction time limit per test 1 second memory limit per test 256 megabytes input stand ...

  8. 2016"百度之星" - 初赛(Astar Round2A)1001 All X(HDU5690)——找循环节|快速幂

    一个由m个数字x组成的新数字,问其能否mod k等于c. 先提供第一种思路,找循环节.因为每次多一位数都是进行(t*10+x)mod k(这里是同余模的体现),因为x,k都确定,只要t再一样得到的答案 ...

  9. Hdu 5451 Best Solver (2015 ACM/ICPC Asia Regional Shenyang Online) 暴力找循环节 + 递推

    题目链接: Hdu  5451  Best Solver 题目描述: 对于,给出x和mod,求y向下取整后取余mod的值为多少? 解题思路: x的取值为[1, 232],看到这个指数,我的心情是异常崩 ...

随机推荐

  1. dubbo系列--集群容错

    作为一个程序员,咱们在开发的时候不仅仅是完成某个功能,更要考虑其异常情况程序如何设计,比如说:dubbo的消费端调用服务方异常的情况,要不要处理?如何处理? dubbo提供了多种集群容错机制,默认是f ...

  2. HTML5 File API的应用

    HTML5 File API简介 HTML5File API协议族 Directories and System   文件系统和目录读取 FileWriter   写入文件 FileReader   ...

  3. spark源码学习-withScope

     withScope是最近的发现版中新增加的一个模块,它是用来做DAG可视化的(DAG visualization on SparkUI) 以前的sparkUI中只有stage的执行情况,也就是说我们 ...

  4. js面向对象之构造函数

    最简单的面向对象程序<script type="text/javascript"> var obj = new Object(); obj.qq = '10791611 ...

  5. vba,excel,身份证,照片

    Sub 插入图片() '调整单元格大小,以适应图片大小 功能 插入身份证照片打印 - 正面在单元格d6       反面单元格d10 ActiveSheet.Pictures.Delete '清理过期 ...

  6. Which dispatch method would be used in Swift?-Existential Container

    In this example: protocol MyProtocol { func testFuncA() } extension MyProtocol { func testFuncA() { ...

  7. C# 支持多线程

    C# 支持多线程并行执行程序 .一个程序由一个单线程开始,该单线程由CLR和操作系统创建而成,并具有多线程创建额外线程的功能. .创建线程的方法 2.1 通过Thread类来创建线程. ThreadS ...

  8. java.math.BigDecimal类multiply的使用

    java.math.BigInteger.multiply(BigInteger val) 返回一个BigInteger,其值是 (this * val).声明 以下是java.math.BigInt ...

  9. 小b和灯泡

    2489 小b和灯泡 2 秒 262,144 KB 10 分 2 级题   小b有n个关闭的灯泡,编号为1...n. 小b会进行n轮操作,第i轮她会将编号为i的倍数的灯泡的开关状态取反,即开变成关,关 ...

  10. vue的[__ob__: Observer]

    为什么会获取不到里面的值 因为:vue data 里面值都是有这个属性的.这是被vue接管的数据,observer是Vue核心中最重要的一个模块(个人认为),能够实现视图与数据的响应式更新,底层全凭o ...