Dollar Dayz(大数母函数,高低位存取)
| Time Limit: 1000MS | Memory Limit: 65536K | |
| Total Submissions: 5655 | Accepted: 2125 | 
Description
1 @ US$3 + 1 @ US$2
1 @ US$3 + 2 @ US$1
1 @ US$2 + 3 @ US$1
2 @ US$2 + 1 @ US$1
5 @ US$1
Write a program than will compute the number of ways FJ can spend N dollars (1 <= N <= 1000) at The Cow Store for tools on sale with a cost of $1..$K (1 <= K <= 100).
Input
Output
Sample Input
5 3
Sample Output
5
题解:母函数的裸题;但是一交就Wa;最终看了discuss,原来是大数;又不是太大,高低位存下,然而还是Wa,因为MOD还是开小了,MOD开到10^18次方才A;协会大神真是吊,这题
我不看题解肯定想不到会是大数。。。
代码:
extern "C++"{
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<queue>
using namespace std;
const int INF = 0x3f3f3f3f;
#define mem(x,y) memset(x,y,sizeof(x))
typedef long long LL;
typedef unsigned long long ULL;
void SI(int &x){scanf("%d",&x);}
void SI(double &x){scanf("%lf",&x);}
void SI(LL &x){scanf("%lld",&x);}
void SI(char *x){scanf("%s",x);}
#define MOD 1000000000000000000
}
const int MAXN = ;
struct Node{
    LL h,l;
};
Node a[MAXN],b[MAXN];
int main(){
    int n,k;
    while(~scanf("%d%d",&n,&k)){
        mem(a,);mem(b,);
        for(int i = ;i <= n;i++)a[i].l = ;
        for(int i = ;i <= k;i++){
            for(int j = ;j <= n;j++){
                for(int t = ;j + t <= n;t += i){
                    b[j + t].l += a[j].l;
                    b[j + t].h += a[j].h;
                    b[j + t].h += b[j + t].l / MOD;
                    b[j + t].l %= MOD;
                }
            }
            for(int j = ;j <= n;j++){
                a[j].h = b[j].h;
                a[j].l = b[j].l;
                b[j].h = ;
                b[j].l = ;
            }
        }
        if(a[n].h)
            printf("%lld",a[n].h);
        printf("%lld\n",a[n].l);
    }
    return ;
}
Dollar Dayz(大数母函数,高低位存取)的更多相关文章
- POJ 3181 Dollar Dayz(全然背包+简单高精度加法)
		POJ 3181 Dollar Dayz(全然背包+简单高精度加法) id=3181">http://poj.org/problem?id=3181 题意: 给你K种硬币,每种硬币各自 ... 
- 字节的高低位知识,Ascii,GB2312,UNICODE等编码的关系与来历
		很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的,于是他们把这称为"字节". 再后来,他们又做了一些可以处理 ... 
- .net下简单快捷的数值高低位切换
		.net下简单快捷的数值高低位切换 做网络通讯中数值传输是很普遍的事情,但数值的存储在不平台和硬件上存储方式都不一样,主要有两大类分别是高位和低位存储:而.net平台下是低位存储,通过.net提供的函 ... 
- C语言如何分离一个数的高低位,如何将2个字节变成一个字节
		关于这个概念,是我从工作中学习的,虽然在读书的时候就应该要掌握,但是在开发中,这项技能尤其重要.我是做嵌入式开发的,在嵌入式开发过程中,如何对数据操作必然是不可缺少的问题,接下来,我们来看一个例子: ... 
- C语言之linux内核实现位数高低位互换
		linux内核实在是博大精深,有很多优秀的算法,我之前在工作中就遇到过位数高低位交换的问题,那时候对于C语言还不是很熟练,想了很久才写出来.最近在看内核的时候看到有内核的工程师实现了这样的算法,和我之 ... 
- P1100 高低位交换
		题目描述 给出一个小于2^{32}232的正整数.这个数可以用一个3232位的二进制数表示(不足3232位用00补足).我们称这个二进制数的前1616位为“高位”,后1616位为“低位”.将它的高低位 ... 
- 【洛谷P1100】高低位交换
		高低位交换 题目链接 这道题非常水,我是用位运算做的 a=n>>16 二进制的“高位”b=n-(a<<16) 二进制的“低位”ans=(b<<16)+a 转换 #i ... 
- 洛谷——P1100 高低位交换
		P1100 高低位交换 题目描述 给出一个小于2^32的正整数.这个数可以用一个32位的二进制数表示(不足32位用0补足).我们称这个二进制数的前16位为“高位”,后16位为“低位”.将它的高低位交换 ... 
- 洛谷 P1100 高低位交换
		P1100 高低位交换 题目描述 给出一个小于2^32的正整数.这个数可以用一个32位的二进制数表示(不足32位用0补足).我们称这个二进制数的前16位为“高位”,后16位为“低位”.将它的高低位交换 ... 
随机推荐
- EXT JS 4.3 在线学习
			官网地址:http://docs.sencha.com/extjs/4.1.3/ 相关示例:http://docs.sencha.com/extjs/4.1.3/#!/example Examples ... 
- Maximal Square 解答
			Question Given a 2D binary matrix filled with 0's and 1's, find the largest square containing all 1' ... 
- 【转】android 物理按键
			关键词:android 按键 矩阵按键 AD按键 平台信息: 内核:linux2.6/linux3.0 系统:android/android4.0 平台:S5PV310(samsung exy ... 
- 所闻所获5:关于iOS的证书
			去年做ondine时,被iOS的证书搞得很是头大,做完了之后感觉一片混乱,印象也不是很深.最近又发布了meditashayne,个人的第二个App,也就重温了一下证书的一些相关操作.这一次的理解比较深 ... 
- 用Jfree实现条形柱状图表,java代码实现
			用Jfree实现条形柱状图表,java代码实现.可经经常使用于报表的制作,代码自己主动生成后能够自由查看.能够自由配置图表的各个属性,用来达到自己的要求和目的 package test1; impor ... 
- linux下ACE使用epoll
			select和epoll的比较就不用多说了.ACE在linux下默认使用select来实现Reactor的.如何在linux下让ACE使用epoll. 1.加一个编译宏,告诉ACE不要使用默认的sel ... 
- apache安装扩展模块
			apache 安装扩展模块 1,首先要确认你是否加载了mod_so模块,这个就是你在编译前参数配置的时候添加-enable-so(启用DSO).如果你没有这模块的话,是无法安装扩展模块的. /usr/ ... 
- Hadoop: HDFS 格式化时,出现 “ERROR namenode.NameNode: java.io.IOException: Cannot create directory /usr/hadoop/tmp/dfs/name/current”
			原因是 没有设置 /usr/hadoop/tmp 的权限没有设置, 将之改为: chown –R hadoop:hadoop /usr/hadoop/tmp 查看: 
- react学习之props
			中秋过后刚好结束在上一家公司的工作,明天开始要正式的找工作了,最近也投了几家公司收到几分面试邀请.在面试的过程中几个面试官聊到了react(当然也有聊了vue,angular).感觉不懂react都不 ... 
- servlet 之 返回json数据并显示
			//实体类import java.util.ArrayList; public class ObjectType { private String type; private ArrayList< ... 
