AT_kupc2017_c.Best Password

通过率:0%

AC君温馨提醒

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

题目描述

京都大学的一栋建筑物只有知道密码的人才能通过认证并进入。

密码是由小写英文字母组成的字符串,作为建筑物的用户,你已经知道了这个密码。

这个认证系统会对输入的密码计算其哈希值,并通过该哈希值进行比对。

长度为 NN 的字符串 SS 的哈希值的计算如下:设 SiS_i 表示第 ii 个字符,则有

A1×C[S1]+A2×C[S2]+⋯+AN×C[SN]A^1 \times C[S_1] + A^2 \times C[S_2] + \cdots + A^N \times C[S_N]

其中 AA 是一个固定整数,满足 2≤A≤102 \leq A \leq 10,并且规定 C[a]=1C[a]=1,C[b]=2C[b]=2,⋯\cdots,C[z]=26C[z]=26。

你非常忙碌,希望能够用尽可能短的输入完成认证。

请你求出与原密码哈希值相同的最短字符串。如果有多个满足条件的字符串,请输出字典序最大的一个。

输入格式

输入为一行,格式如下:

AA SS

输出格式

请输出满足条件的字符串,共一行。

输入输出样例

  • 输入#1

    2
    kupc

    输出#1

    yzp
  • 输入#2

    10
    abcde

    输出#2

    utuvc
  • 输入#3

    4
    zzz

    输出#3

    zzz
  • 输入#4

    9
    kyotouniversityprogrammingcontest

    输出#4

    txxsxtwztwyrrsyyzwxyrtuzuxsvvswzs

说明/提示

数据范围

  • 2≤A≤102 \leq A \leq 10
    • AA 是整数。
  • 1≤∣S∣≤10001 \leq |S| \leq 1000
    • SS 是由小写字母组成的字符串。

样例解释1

原字符串的哈希值为 21×11+22×21+23×16+24×3=2822^1 \times 11 + 2^2 \times 21 + 2^3 \times 16 + 2^4 \times 3 = 282。输出字符串的哈希值同样为 21×25+22×26+23×16=2822^1 \times 25 + 2^2 \times 26 + 2^3 \times 16 = 282。

样例解释4

哈希值有可能非常大。

由 ChatGPT 5 翻译

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

首页