小凱的疑惑

 

題目描述

小凱手中有兩種面值的金幣,兩種面值均爲正整數且彼此互素。每種金幣小凱都有無數個。在不找零的情況下,僅憑這兩種金幣,有些物品他是無法準確支付的。現在小凱想知道在無法準確支付的物品中,最貴的價值是多少金幣?注意:輸入數據保證存在小凱無法準確支付的商品。

輸入描述:

輸入數據僅一行,包含兩個正整數 a 和 b,它們之間用一個空格隔開,表示小凱手中金幣的面值。

輸出描述:

輸出文件僅一行,一個正整數 N,表示不找零的情況下,小凱用手中的金幣不能準確支付的最貴的物品的價值。

示例1

輸入

 

3 7

輸出

 

11

說明

小凱手中有面值爲3和7的金幣無數個,在不找零的前提下無法準確支付價值爲 1、2、4、5、8、11的物品,其中最貴的物品價值爲11。
比11貴的物品都能買到,比如:
12 = 3 x 4 + 7 x 0
13 = 3 x 2 + 7 x1
14 = 3 x 0 + 7 x 2
15 = 3 x 5 + 7 x 0

備註:

對於 30% 的數據:1 ≤ a,b ≤ 50;
對於 60% 的數據: 1 ≤ a,b ≤ 10,000;
對於 100% 的數據:1 ≤ a,b ≤ 1,000,000,000。

題解 :  給定a,b . 且gcd(a,b)=1,求最大的C,使得C不能被表示爲ax+by(x≥0,y≥0)的形式

網上有大神給出一道數學定理 -  賽瓦維斯特定理. 即答案是 a*b - a -b ;

證明 :  https://www.cnblogs.com/xxzh/p/9178564.html

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <queue>
using namespace std ;
typedef long long LL ;
int main()
{
	LL  a ,b ;
	scanf("%lld%lld",&a,&b);
    printf("%lld",a*b-a-b);
	return 0 ;
	
}

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章