HDU 1792 - A New Change Problem(規律,最大不能組合數及其個數)

辭樹 LingTree發表於2018-08-20

A New Change Problem

Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1628    Accepted Submission(s): 1041


 

Problem Description

Now given two kinds of coins A and B,which satisfy that GCD(A,B)=1.Here you can assume that there are enough coins for both kinds.Please calculate the maximal value that you cannot pay and the total number that you cannot pay.

Input

The input will consist of a series of pairs of integers A and B, separated by a space, one pair of integers per line. 

Output

For each pair of input integers A and B you should output the the maximal value that you cannot pay and the total number that you cannot pay, and with one line of output for each line in input.

Sample Input

2 3

3 4

Sample Output

1 1

5 3

 

給出 a,b(且a,b互質) 。求解  ax + by  不能表示的最大數字以及不能表示的數字的個數。

最大不能表示:n*m-n-m

所有不能表示的個數:(m-1)*(n-1)/2

詳細證明 :http://blog.sina.com.cn/s/blog_79b832820100riqp.html

#include <bits/stdc++.h>
using namespace std;
#define clr(a) memset(a,0,sizeof(a))
#define ling cout<<"-----------------"<<endl;

typedef long long ll;
const int maxn = 1e5+10;
const int MAXN = 1e6+10;
const int INF = 0x3f3f3f3f;
const int MOD = 1e9+7;
const int N = 1010;


int main(){
	int a,b;
    while(~scanf("%d %d",&a,&b)){
        printf("%d %d\n",a*b-a-b,(a-1)*(b-1)/2);
    }
	return 0;
}

 

相關文章