SDUT1061Binomial Showdown(组合数)

摘要:
Action=showproblem&problemid=1061标题:这意味着这个问题的英语不懂,但可以理解警告。看看样本,像一个组合一样数数。结果是真的。这类问题中有很多代码,但基本上所有类型的代码在提出各种问题时都会有不同的问题,要么超时问题,要么越界问题,要么直接WA问题。我很容易理解超时问题,但我不理解的是,当我们计算组合数时,为什么会出现越界和WA错误。这是阵列问题吗?

http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1061

题意 : 表示这个题的英文没看懂,就看懂了一个warning,看着样例像组合数就算了一下,结果真是。

组合数这种题,一共有好多代码,但基本各种代码放在各种题上就会出现不同的问题,要么是超时问题,或者越界问题,还有的直接WA,超时我倒是好理解,但我不明白的是为什么都是算组合数的还会出现越界和WA这样的错误,难道是数组问题?一直不太肯定,毕竟只有一种方法用了数组,递推去做的,还希望了解的朋友们能为我指点迷津啊】

SDUT1061Binomial Showdown(组合数)第1张SDUT1061Binomial Showdown(组合数)第2张
#include<stdio.h>
#define LL long long
LL c(LL x, LL y)
{
    int i, j;
    LL sum = 1;
    if(y > (x/2))
        y = x - y;
    for(i = x, j = 1; i > x-y; i--, j++)
    {
        sum *= i;
        sum /= j;
    }

    return sum;
}
int main()
{
    LL n,m;
    while(~scanf("%lld %lld",&m,&n))
    {
        if(m == 0&&n == 0)
            break ;
        printf("%lld
",c(m,n));
    }
}

 
View Code

这个代码算适用大多数代码的,若是数据过大,用这个一般就对

免责声明:文章转载自《SDUT1061Binomial Showdown(组合数)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SDUT2241计算组合数C(n,m)(组合数)POJ2442Sequence下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

进程与信号(四)

线程 Linux进程可以协作,可以发送消息,也可以中断另一个进程。他们甚至可以在彼此之间共享内存段,但是在操作系统内部他们却是完全不同的实体。他们并不能共享变量。在许多Unix系统与Linux系统还有另一类名为线程的进程。线程在某些程序中具有巨大的价值,例如多线程数据库服务器,然而线程很难进行编程。Linux上的线程编程并不如使用多进程那样常见,因为Linu...

Groovy 闭包深入浅出 终点就是起点 ITeye技术网站

Groovy 闭包深入浅出 - 终点就是起点 - ITeye技术网站 Groovy 闭包深入浅出 博客分类:Grails/Groovy GroovyLISP游戏PythonScheme 闭包概念 Groovy语言中闭包(closure)是一个非常重要的概念,而且深入的理解了闭包对充分用好Groovy有很大帮助。对闭包比较书面的一种解释“...

对面向对象和面向过程的一些新理解

作者:朱金灿来源:http://blog.csdn.net/clever101 前天看一个系统的代码,突然对面向对象和面向过程有了一些新的理解。简而言之,面向对象采用空间换时间的策略,面向过程采用时间换空间的策略,正因为采用不同的策略,就有了不同的应用场合。 比如让你设计一个图像读取库,其中要设计一个获取图像大小的接口。如果采用面向过程的方式设计,可...

[CPyUG]怎样获取其他程序向终端输出的值呢 Google 网上论坛

[CPyUG]怎样获取其他程序向终端输出的值呢 - Google 网上论坛 [CPyUG]怎样获取其他程序向终端输出的值呢 8 位作者在“python-cn(华蟒用户组,CPyUG 邮件列表)”中发布了 9 个帖子 类别: ning...@gmail.com 10...

POJ 1006 Biorhythms 数论(孙子定理)

题目地址:http://poj.org/problem?id=1006&lang=default&change=true 这是一道变形的孙子定理的题目,直接用公式。 代码如下: #include <iostream> #include <cstdio> #include <cstdlib> #incl...

vi编辑器的学习使用(二十九)

语法加亮功能是由位于$VIMRUNTIME/syntax/language.vim中的语法文件来控制的.如果我们对现在的语法加亮功不满意,我们可以为这些语法文件做一份拷贝,然后按照我们的想法进行修改.在Vim编辑器中我们有多种语言可以选择.汇编语言:现在有许多不同种类的汇编语言.但是在默认的情况下,Vim认为我们是使用GNU风格的汇编语言.其他的一些汇编语言...