View Code of Problem 787

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner in =new Scanner(System.in);
		int t =in.nextInt();
		for(int i =0;i<t;i++) {
			int m =in.nextInt();
			int n =in.nextInt();
			System.out.println(partitionHelp(m,n));
		}
	}
	public static int partitionHelp(int n,int m)
	{
		if(n<1 ||m<1)
		{
			return 0;
		}
		else if(n==1 || m==1)
		{
			return 1;
		}
		else if(n<m)
		{
			return partitionHelp(n,n);
		}
		else if(n==m)
		{
			return 1+partitionHelp(n,n-1);
		}
		else
		{
			return partitionHelp(n,m-1)+partitionHelp(n-m,m);
		}
	}
}

Double click to view unformatted code.


Back to problem 787