AT_abc192_c.[ABC192C] Kaprekar Number

入门

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

对于 00 以上的整数 xx,定义 g1(x), g2(x), f(x)g_1(x),\ g_2(x),\ f(x) 如下:

  • g1(x)g_1(x):将 xx 用十进制表示后,把各位数字按从大到小的顺序排列得到的整数。
  • g2(x)g_2(x):将 xx 用十进制表示后,把各位数字按从小到大的顺序排列得到的整数。
  • f(x)=g1(x)−g2(x)f(x) = g_1(x) - g_2(x)。

例如,g1(314)=431g_1(314) = 431,g2(3021)=123g_2(3021) = 123,f(271)=721−127=594f(271) = 721 - 127 = 594。请注意,前导多余的 00 会被忽略。

给定整数 N,KN, K,令 a0=Na_0 = N,ai+1=f(ai) (i≥0)a_{i+1} = f(a_i)\ (i \geq 0),请计算数列的第 KK 项 aKa_K。

输入格式

输入以如下格式从标准输入读入:

NN KK

输出格式

输出 aKa_K。

输入输出样例

  • 输入#1

    314 2

    输出#1

    693
  • 输入#2

    1000000000 100

    输出#2

    0
  • 输入#3

    6174 100000

    输出#3

    6174

说明/提示

限制条件

  • 0≤N≤1090 \leq N \leq 10^9
  • 0≤K≤1050 \leq K \leq 10^5
  • 输入均为整数

样例解释 1

  • a0=314a_0 = 314
  • a1=f(314)=431−134=297a_1 = f(314) = 431 - 134 = 297
  • a2=f(297)=972−279=693a_2 = f(297) = 972 - 279 = 693

样例解释 2

  • a0=1000000000a_0 = 1000000000
  • a1=f(1000000000)=1000000000−1=999999999a_1 = f(1000000000) = 1000000000 - 1 = 999999999
  • a2=f(999999999)=999999999−999999999=0a_2 = f(999999999) = 999999999 - 999999999 = 0
  • a3=f(0)=0−0=0a_3 = f(0) = 0 - 0 = 0
  • ⋮\vdots

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页