标题:求aaaa(n个a)-aaaa...-aaa-aa-a类似问题
只看楼主
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
n的范围是多少?你用哪个LB的int能存得下n个a吗?

程序代码:
#include <stdio.h>

static void foo_( unsigned a, unsigned n, unsigned carry )
{
    if( n < 2  )
    {
        putchar( '0' + n*a - carry );
        return;
    }
    foo_( a, n-1, ((n-2)*a+carry + 9)/10 );
    putchar( '0' + (10 - ((n-2)*a+carry)%10)%10 );
}
void foo( unsigned a, unsigned n )
{
    foo_( a, n, 0 );
    putchar( '\n' );
}

int main( void )
{
    foo( 2, 3 ); // 198
    foo( 2, 2 ); // 20
    foo( 2, 1 ); // 2
    foo( 2, 0 ); // 0

    foo( 8, 99 ); // 790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123544
}

2018-06-15 08:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-487877-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.582877 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved