加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

UVa:10157 Expressions(动态规划+大数)

发布时间:2020-12-14 03:40:53 所属栏目:大数据 来源:网络整理
导读:思路:这个题和http://www.voidcn.com/article/p-ntwsozpx-se.html?基本一样。只不过数据更强一点,把数组改大之后就能AC。 我这里尝试了Java的大数,效率比我自己写的要快一些。 import java.util.*;import java.io.*;import java.math.BigInteger; public

思路:这个题和http://www.voidcn.com/article/p-ntwsozpx-se.html?基本一样。只不过数据更强一点,把数组改大之后就能AC。

我这里尝试了Java的大数,效率比我自己写的要快一些。

import java.util.*;
import java.io.*;
import java.math.BigInteger; 

public class Main 
{
	public static void main(String[] args) 
	{	
		BigInteger[][] dp = new BigInteger[155][155]; 
		for(int i=0;i<=150;++i)
			for(int j=0;j<=150;++j) 
	      if(i==0)	dp[i][j]=new BigInteger("1");
	      else dp[i][j]=new BigInteger("0");
	     for(int i=1;i<=150;++i)
	     	for(int j=1;j<=150;++j)
	     			for(int k=1;k<=i;++k)
	     			dp[i][j]=dp[i][j].add(dp[i-k][j].multiply(dp[k-1][j-1]));
		Scanner in = new Scanner(System.in);
		while(in.hasNextInt())
		{
			int a=in.nextInt(),b=in.nextInt();
			if(a%2!=0) System.out.println(0);
			else System.out.println(dp[a/2][b].subtract(dp[a/2][b-1]));
		}		
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读