【Noip2017 小凯的疑惑】
题目描述
小凯手中有两种面值的金币,两种面值均为正整数且彼此互素。每种金币小凯都有 无数个。在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的。现在小 凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在 小凯无法准确支付的商品。
输入格式:
输入数据仅一行,包含两个正整数 a 和 b,它们之间用一个空格隔开,表示小凯手中金币的面值。
输出格式:
输出文件仅一行,一个正整数 NN,表示不找零的情况下,小凯用手中的金币不能准确支付的最贵的物品的价值。
输入样例:
3 7
输出样例:
11
题解:
求出最大的数不能化成ax+by。(听说小学数学)
答案就是a*b-a-b。(下面代码就是考场代码,比较奇怪,反正对拍没错就好)
1 #include<iostream> 2 #include<cstdlib> 3 #include<cstring> 4 #include<cstdio> 5 #include<algorithm> 6 long long n,m; 7 int main() 8 { 9 scanf("%lld%lld",&n,&m); 10 if(n>m) 11 { 12 long long t=n; 13 n=m; 14 m=t; 15 } 16 long long d=m-n; 17 printf("%lld",d*(n-1)+n*(n-2)); 18 return 0; 19 }