桂城真题2022年

第二题,最小的数

题目描述

给定两个整数 X 和 K。每使用一次魔法,都会执行: X = |X - K|。即 X 会变成 X 与 K 的差的绝对值。你可以使用无数次魔法,也可以不使用魔法,目标是 X 最后的值最小。

输入格式

一行,两个整数 X 和 K ( 0 <= X <= 10^{18}1018 , 1 <= K <= 10^{18}1018 )。

输出格式

一个整数,表示最终可以得到的最小的 X 。

样例

输入数据 1

复制代码
7 4

Copy

输出数据 1

复制代码
1

Copy

输入数据 2

复制代码
10000000000000000 1

Copy

输出数据 2

复制代码
0

代码+题解

复制代码
#include <bits/stdc++.h>
using namespace std;
//unsigned long long ;
unsigned long long n,k;
int main(){
    cin>>n>>k;
    cout<<min(n%k,k-n%k);//如果是倍数,就输出余数,否则就输出剩下的数
    return 0;
}
相关推荐
燃于AC之乐3 小时前
我的算法修炼之路--4 ———我和算法的爱恨情仇
算法·前缀和·贪心算法·背包问题·洛谷
MM_MS8 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
独自破碎E8 小时前
【二分法】寻找峰值
算法
mit6.8249 小时前
位运算|拆分贪心
算法
ghie90909 小时前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab
恋爱绝缘体19 小时前
2020重学C++重构你的C++知识体系
java·开发语言·c++·算法·junit
wuk9989 小时前
VSC优化算法MATLAB实现
开发语言·算法·matlab
Z1Jxxx10 小时前
加密算法加密算法
开发语言·c++·算法
乌萨奇也要立志学C++10 小时前
【洛谷】递归初阶 三道经典递归算法题(汉诺塔 / 占卜 DIY/FBI 树)详解
数据结构·c++·算法
vyuvyucd10 小时前
C++引用:高效编程的别名利器
算法