桂城真题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;
}
相关推荐
shinelord明3 分钟前
【大数据技术实战】Kafka 认证机制全解析
大数据·数据结构·分布式·架构·kafka
让我们一起加油好吗20 分钟前
【基础算法】01BFS
数据结构·c++·算法·bfs·01bfs
孤狼灬笑26 分钟前
机器学习十大经典算法解析与对比
人工智能·算法·机器学习
草莓工作室35 分钟前
数据结构3:线性表2-顺序存储的线性表
数据结构·windows
1白天的黑夜11 小时前
递归-24.两两交换链表中的节点-力扣(LeetCode)
数据结构·c++·leetcode·链表·递归
1白天的黑夜12 小时前
递归-206.反转链表-力扣(LeetCode)
数据结构·c++·leetcode·链表·递归
靠近彗星2 小时前
3.1 栈
数据结构·算法
sulikey2 小时前
一文彻底理解:如何判断单链表是否成环(含原理推导与环入口推算)
c++·算法·leetcode·链表·floyd·快慢指针·floyd判圈算法