洛谷 P3951 小凯的疑惑

问题描述

小凯手中有两种面值的金币,两种面值均为正整数且彼此互素。每种金币小凯都有无数个。在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的。现在小凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在小凯无法准确支付的商品。 

输入格式

输入文件名为math.in。 

输入数据仅一行,包含两个正整数 a 和 b,它们之间用一个空格隔开,表示小凯手中金币的面值。 

输出格式

输出文件名为math.out。 

输出文件仅一行,一个正整数 N,表示不找零的情况下,小凯用手中的金币不能准确支付的最贵的物品的价值。 

输入输出样例1

math.in  

3 7 

math.out 

11

 

输入输出样例1说明

小凯手中有面值为3和7的金币无数个,在不找零的前提下无法准确支付价值为1、2、4、5、8、11 的物品,其中最贵的物品价值为 11,比 11 贵的物品都能买到,比如:  

$12 = 3 × 4 + 7 × 0$

$13 = 3 × 2 + 7 × 1$

$14 = 3 × 0 + 7 × 2$

$15 = 3 × 5 + 7 × 0$

…… 

数据规模与约定

对于 30%的数据: $1 ≤ a,b ≤ 50$。 

对于 60%的数据: $1 ≤ a,b ≤ 10,000$。 

对于 100%的数据:$1 ≤ a,b ≤ 1,000,000,000$。 

感慨

  洛谷的公式显示好奇怪,题面复制过来显示不对

  退役后第一次noip,我只能旁观,然后靠洛谷群、uoj群、cv群获取一些最新动态以及题目……

  快四个月了吧,现在的水平退化到只能做做这种背结论(雾)的题了。

  证明?我不会……

  这篇博文纯属有感而发,纪念一下退役后的第一个noip。

解题思路

  洛谷群里kkksc03给的链接——

  https://www.zhihu.com/question/41809896/answer/129891487?utm_source=qq&utm_medium=social

  百度到的比较好的解释——

  http://www.cnblogs.com/jefflyy/p/7819858.html

源代码  //这种好像没有粘的必要啊

#include<stdio.h>
int main()
{
    unsigned long long a,b;
    scanf("%llu%llu",&a,&b);
    printf("%llu",a*b-a-b);
    return 0;
}
posted @ 2017-11-12 15:59  wawcac  阅读(1517)  评论(0编辑  收藏  举报