题目名称 3893. [桐柏一中邀请赛S13]铃
输入输出 suzume.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatarsyzhaoss 于2023-05-05加入
开放分组 全部用户
提交状态
分类标签
递归
分享题解
通过:8, 提交:18, 通过率:44.44%
GravatarShallowDream雨梨 100 0.000 s 0.00 MiB C++
Gravatar456 100 0.000 s 0.00 MiB C++
Gravatar┭┮﹏┭┮ 100 0.000 s 0.00 MiB C++
Gravatar宇战 100 0.000 s 0.00 MiB C++
Gravatar小刘同学 100 0.000 s 0.00 MiB C++
Gravatarsyzhaoss 100 0.015 s 1.45 MiB C++
Gravatarnoi加油 100 0.029 s 3.36 MiB C++
Gravatarnoi加油 100 0.031 s 3.36 MiB C++
GravatarSkloud 92 0.019 s 1.43 MiB C++
Gravatarnoi加油 92 0.078 s 3.36 MiB C++
关于 的近10条评论(全部评论)
Yoimiya()
Gravatarxxz
2024-07-10 10:03 2楼
这题题目名称打错了
应该是 铃 金字旁的
Gravatarqwq
2023-06-10 19:28 1楼

3893. [桐柏一中邀请赛S13]铃

★   输入文件:suzume.in   输出文件:suzume.out   评测插件
时间限制:1 s   内存限制:256 MiB

【题目描述】

云浅给了你一个正整数 $n$。

Yoimiya 手里也有一个整数 $x$,一开始 $x = 0$。Yoimiya 可以进行不超过 $100$ 次操作,每次操作中,她可以将 $x$ 变为 $x + 1$,或者将 $x$ 变为 $x \times 2$。

现在 Yoimiya 想把这个数 $x$ 恰好变成 $n$。她想让你帮她输出一个方案。

【输入格式】

输入一行一个正整数 $n$。

【输出格式】

输出一个字符串,由 *+ 组成,表示你的操作方案。

具体地,设你输出的字符串 $S$ 长度为 $k$,那么首先要满足对每个 $i=1,2,\cdots,k$,都有 $S_i =$* 或 $S_i =$+。这个字符串代表你进行了 $k$ 次操作,若 $S_i =$*代表第 $i$ 次操作是令 $x\leftarrow x\times 2$,$S_i =$ + 则代表第 i 次操作是令 $x\leftarrow x+1$。

本题使用自定义校验器检验你的答案是否正确,因此若有多种满足条件的方案,你只需要输出任意一种

【样例输入】

10

【样例输出】

+++++*

【样例说明】

一开始 $x = 0$。前五次操作都是将 $x\leftarrow x+1$,此时 $x = 5$;再令$x\leftarrow x\times 2$,则有 $x = 10$。

【数据规模与约定】

本题使用自定义校验器检验你的答案是否正确,因此若有多种满足条件的方案,你只需要输出任意一种。

本题共有 10 个测试点,每个测试点 10 分。对于每个测试点,若你输出了字符串 $S$:

• 若 $S$ 不符合输出格式中的要求或者 $S$ 代表的操作方案最后得到的不是 $n$,你将获得 0 分。

• 若 $S$ 符合输出格式中的要求且该方案最后得到的数恰好为 $n$,但 $S$ 的长度超过 $10^6$,你将获得 $0$ 分。

• 若 $S$ 符合输出格式中的要求且该方案最后得到的数恰好为 $n$,且 $S$ 的长度超过了 $100$ 但不超过 $10^6$,你将获得 $6$ 分。

• 若 $S$ 符合输出格式中的要求且该方案最后得到的数恰好为 $n$ 且 $S$ 的长度不超过 $100$,你将获得 $10$分。

对于所有测试点:$1 \leq n\leq 10^6$。

每个测试点的具体限制见下表:

【来源】

桐柏一中邀请赛S13 Task1