HDU 4927 Series 1 ( 组合+高精度)】的更多相关文章

pid=4927">Series 1 大意: 题意不好翻译,英文看懂也不是非常麻烦,就不翻译了. Problem Description Let A be an integral series {A1, A2, . . . , An}. The zero-order series of A is A itself. The first-order series of A is {B1, B2, . . . , Bn-1},where Bi = Ai+1 - Ai. The ith-orde…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4927 解题报告:对于n,结果如下: C(0,n-1) *A[n] - C(1,n-1) * A[n-1] + C(2,n-1) * A[n-2] - C(3,n-1) * A[n-3] ....... C(n-1,n-1) * A[1]; n <= 3000,到了后面二项式会很大,因为要用到高精度的乘法和除法,所以直接用java的大数类写了,简单多了. import java.math.BigInt…
HDU 4927 Series 1 题目链接 题意:给定一个序列,要求不断求差值序列.直到剩一个,输出这个数字 思路:因为有高精度一步.所以要推理一下公式,事实上纸上模拟一下非常easy推出公式就是一个类似杨辉三角的组合数求和,只是奇数位置是加,偶数位置是减,然后高精度过掉 代码: 本人的第一个JAVA程序^ ^ import java.util.Scanner; import java.math.BigInteger; public class Main { public static voi…
题目链接 题意 : n个数,每操作一次就变成n-1个数,最后变成一个数,输出这个数,操作是指后一个数减前一个数得到的数写下来. 思路 : 找出几个数,算得时候先不要算出来,用式子代替,例如: 1 2 3 4 5 6 (2-1) (3-2) (4-3) (5-4)(6-5) (3-2-2+1)(4-3-3+2)(5-4-4+3)(6-5-5+4) (4-3-3+2-3+2+2-1)(5-4-4+3-4+3+3-2)(6-5-5+4-5+4+4-3) (5-4-4+3-4+3+3-2-4+3+3-2…
HDU 4927 −ai,直到序列长度为1.输出最后的数. 思路:这题实在是太晕了,比赛的时候搞了四个小时,从T到WA,唉--对算组合还是不太了解啊.如今对组合算比較什么了-- import java.io.*; import java.math.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin=new Scanner (new BufferedInput…
http://acm.hdu.edu.cn/showproblem.php?pid=4927 给定一个长度为n的序列a,每次生成一个新的序列,长度为n-1,新序列b中bi=ai+1−ai,直到序列长度为1.输出最后的数. n有3000果断用大数,类似杨辉三角推出每个数对最终结果的贡献,利用公式:c[n][m] = c[n][m-1]*(n-m+1)/m防超时 import java.math.BigInteger; import java.util.*; public class Main {…
BUPT2017 wintertraining(15) #5I 题意 输出序列A[1..n]的第n-1阶差分(一个整数). 题解 观察可知答案就是 \[ \sum_{i=0}^{n-1} {(-1)^{i}C_n^{i} A_{n-i}} \] 需要用大整数. 代码 Java代码 import java.io.*; import java.math.*; import java.util.*; import java.text.*; public class Main{ public stati…
http://acm.hdu.edu.cn/showproblem.php?pid=4927 直接模拟会超时,要在纸上写写推公式 A[n]*C(0,n-1)  - A[n-1]*C(1,n-1) + A[n-2]*C(2,n-1)  - A[n-3]*C(3,n-1) ...... A[1]*C(n-1,n-1) 组合数可以用递推快速计算出来 #include <cstdio> #include <cstring> #include <cstdlib> #include…
//  大数继续 Problem Description Recall the definition of the Fibonacci numbers:  f1 := 1  f2 := 2  fn := fn-1 + fn-2 (n >= 3)  Given two numbers a and b, calculate how many Fibonacci numbers are in the range [a, b].    Input The input contains several t…
Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3. 计算第n项Fibonacci数值. Input 输入第一行为一个整数N,接下来N行为整数Pi(1<=Pi<=1000). Output 输出为N行,每行为对应的f(Pi). Sample Input 5 1 2 3 4 5 Sample Output 1 1 2 3 5 /*************** 继续大数. 用 hdu 1047 写…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1502 题目大意:找出总的满足条件的字符串数,num(a)=num(b)=num(c)且任何前缀均满足num(a)>=num(b)>=num(c) 解题思路:用dp[i][j][k]表示a取i个,b取j个,c取k个的状态下最多有多少种满足条件的情况,容易推得状态转移方程如下: dp[i][j][k]=dp[i-1][j][k](i>j时)+dp[i][j-1][k](j>k时)+dp[i…
1.hdu 1715  大菲波数 2.链接:http://acm.hdu.edu.cn/showproblem.php?pid=1715 3.总结:水 #include<iostream> #include<cstring> #include<cmath> #include<queue> #include<algorithm> #include<cstdio> #define max(a,b) a>b?a:b using nam…
题意:对给定前缀(长度不超过40),找到一个最小的n,使得Fibonacci(n)前缀与给定前缀相同,如果在[0,99999]内找不到解,输出-1. 思路:用高精度加法计算斐波那契数列,因为给定前缀长度不超过40,所以高精度计算时每次只需保留最高60位,每次将得到的值插入到字典树中,使得树上每个节点只保留最小的n值.查询输出字典树结点的值. #include<cstdio> #include<cstring> #include<iostream> #define MAX…
Problem Description 开学了,杭电又迎来了好多新生.ACMer想为新生准备一个节目.来报名要表演节目的人很多,多达N个,但是只需要从这N个人中选M个就够了,一共有多少种选择方法? Input 数据的第一行包括一个正整数T,接下来有T组数据,每组数据占一行. 每组数据包含两个整数N(来报名的人数,1<=N<=30),M(节目需要的人数0<=M<=30) Output 每组数据输出一个整数,每个输出占一行 Sample Input 5 3 2 5 3 4 4 3 6…
题目链接 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2进制数q后,则q的总位数不超过w. 在这里,正整数k(1≤k≤9)和w(k〈w≤30000)是事先给定的. 问:满足上述条件的不同的r共有多少个? 我们再从另一角度作些解释:设S是长度为w 的01字符串(即字符串S由w个"0"或"1"组成),S对应于上述条件(3)中的q…
Dressing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2964 Accepted Submission(s): 1291 Problem Description Wangpeng has N clothes, M pants and K shoes so theoretically he can have N×M×K differ…
题意: 一个含n个数的序列a,每两个相邻的数相减得到一个新数,这些数组成一个新的序列. 假设全部得到的序列都满足非严格的单调性.则原序列为nice series.假设给出的序列 本来不满足单调性.它是ugly series.否则输出k,表示前k个序列都满足单调性,第k+1不满足. 算法: 模拟合并和推断单调性,假设不优化会Tle. 假设去掉前导0和后导0,由于0-0还是0,省去一部分操作. 可是为了避免得到的下一个序列的推断有误,应该前后各留一个0. 比方: 7 1 1 1 3 5 7 9 第一…
Problem Description Apple is Taotao's favourite fruit. In his backyard, there are three apple trees with coordinates (x1,y1) , (x2,y2) , and (x3,y3) . Now Taotao is planning to plant a new one, but he is not willing to take these trees too close. He…
链接:传送门 思路:高精度水题 /************************************************************************* > File Name: hdu1047.cpp > Author: WArobot > Blog: http://www.cnblogs.com/WArobot/ > Created Time: 2017年05月16日 星期二 21时16分38秒 ***************************…
有了题解以后这题就成了一个模拟题.不过写了好久才把它写对…… Sad #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <cmath> #include <algorithm> #include <string> #include <queue> #include <stack>…
方程 ★☆ 输入文件:equationz.in 输出文件:equationz.out 简单对比 时间限制:1 s 内存限制:128 MB [题目描述] hyc 碰到了一个难题,请你来帮忙解决. 对于不定方程a1+a2+a3+--+ak=g(x) ,其中K.>=2,k是正整数 , x 是正整数 g(x)=x^x mod 1000 , x,k 是给定的数 . 我们要求的是这个不定方程的正整数解组数 . 举例来说 , 当 k=3,x=2 时 ,g(x)=4, 原方程即 A1+A2+A3=4 . 这个方…
Description 某中学有 n 名男同学,m 名女同学和两名老师要排队参加体检.他们排成一条直线,并且任意两名女同学不能相邻,两名老师也不能相邻,那么一共有多少种排法呢?(注意:任意两个人都是不同的)   Input 只有一行且为用空格隔开的两个非负整数 n 和 m,其含义如上所述.   对于 30%的数据 n≤100,m≤100   对于 100%的数据 n≤2000,m≤2000 Output 输出文件 output.txt 仅包含一个非负整数,表示不同的排法个数.注意答案可能很大.…
import java.util.Scanner; import java.math.BigInteger; public class Main { private static int [] a = new int[3005]; private static int T; private static int n; public static void solve() { BigInteger rs = BigInteger.ZERO; BigInteger temp = BigInteger…
模板很重要 #include <cstdio> #include <cstring> #include <cstdlib> #include <iostream> #include <algorithm> using namespace std; #define MAXN 9999 #define MAXSIZE 10 #define DLEN 4 class BigInt { private: ]; //可以控制大数的位数 int len; /…
//  继续大数,哎.. Problem Description A Fibonacci sequence is calculated by adding the previous two members the sequence, with the first two members being both 1. F(1) = 1, F(2) = 1, F(3) = 1,F(4) = 1, F(n>4) = F(n - 1) + F(n-2) + F(n-3) + F(n-4) Your tas…
//深刻认识到自己的粗心,为此浪费了一天.. Problem Description 话说,经过了漫长的一个多月,小明已经成长了许多,所以他改了一个名字叫"大明". 这时他已经不是那个只会做100以内加法的那个"小明"了,现在他甚至会任意长度的正小数的加法. 现在,给你两个正的小数A和B,你的任务是代表大明计算出A+B的值.   Input 本题目包含多组测试数据,请处理到文件结束. 每一组测试数据在一行里面包含两个长度不大于400的正小数A和B.   Output…
/* 数学题0.0 最后答案:A(n,n)*A(n+1,2)*A(n+3,m)+A(n,n)*C(m,1)*A(2,2)*C(n+1,1)*A(n+2,m-1); 简单解释一下 +之前的很显然 先排男生 然后老师插空 然后女生插空 显然符合条件 但仔细一想会发现少算了一部分 就是 老师 女生 老师 的情况 在单独考虑着一种 先选夹在中间的女生(C(m,1)) 然后老师换位置 A(2,2) 然后安排这个(C(n+1,1)) 然后剩下的女生插空 注意不能把 老师 女生 老师 和其他女生看成一样的 因…
解题报告:最多有8种学分的课,然后每种学分的课最多有10门,问要选学分为n的课一共有多少种选法,注意学分相同的课之间没有区别. 这题暴力可过,我用了8层循环,就简单了.听说可以用母函数,但没学过,看一下. #include<cstdio> #include<cstring> #include<iostream> #include<cmath> using namespace std; ]; int main() { int T,n,k,x,y; scanf(…
题目链接 题意 有一个\(n\)个珠子的环,两人轮流给环上的珠子涂色.规定每次涂色必须涂连续的\(m\)颗珠子,无法继续操作的人输.问先手能否赢. 思路 参考 转化 第一个人取完之后就变成了一条链,现只需要考虑这条链上的操作即可. SG函数计算 考虑在一个链上涂连续的\(m\)颗珠子这个问题的子问题,记当前有\(x\)颗珠子 \(x\lt m\) 显然已经无法涂了,故\(sg(x)=0\). \(x\geq m\) 设左边有\(i\)颗珠子,则右边有\((m-i)\)颗珠子.则该子问题的\(sg…
题意非常easy: 对于长度为n的数.做n-1遍.生成的新数列: b1=a2-a1   b2=a3-a2  b3=a4-a3 c1=b2-b1   c2=b3-b2 ans=c2-c1 最后推出公式:  为n所在行的杨辉三角 对于例子: 3 1 2 3 ans=1*1-2*2+1*3=0 4 1 5 7 2 ans=-1*1+3*5-3*7+1*2=-5 求杨辉三角每一个数的时候能够优化一下,后一个数由前一个各乘除一次就好了 JAVA用大数秒A. . . BUT 不会JAVA  - -# 蛋疼用…