若十进制整数s和t中0~9数字出现的次数都相同, 则称s和t互为异位数。例如,115与511互为异位数。 编写程序, 对输入的两个十进制整数, 判断是否互为异位数。若互为异位数, 输出“yes”; 否则, 输出“no”。 输入格式: 输入两个整数, 以空格分隔 输出格式: yes 或 noc语言
时间: 2024-01-21 08:20:00 浏览: 46
编写程序,以字符形式输入一个十六进制数,将其变换为一个十进制整数后输出。(要求:十六进制允许的字符是从0~9和a~f或A~F)
5星 · 资源好评率100%
以下是一种可能的 Python 代码实现:
```python
def is_anagram(s, t):
# 统计s和t中每个数字出现的次数
count_s = [0] * 10
count_t = [0] * 10
for digit in s:
count_s[int(digit)] += 1
for digit in t:
count_t[int(digit)] += 1
# 检查是否每个数字出现的次数都相同
for i in range(10):
if count_s[i] != count_t[i]:
return False
return True
# 读入两个整数
s, t = input().split()
# 判断是否互为异位数并输出结果
if is_anagram(s, t):
print("yes")
else:
print("no")
```
这里定义了一个名为 `is_anagram` 的函数来判断两个数字是否互为异位数。该函数首先使用两个长度为10的列表 `count_s` 和 `count_t` 来统计两个数字中每个数字出现的次数,然后检查这两个列表中每个元素是否相同。如果有任何一个元素不同,则说明两个数字不互为异位数,返回 `False`,否则返回 `True`。
在主程序中,我们读入两个整数并调用 `is_anagram` 函数来判断它们是否互为异位数,然后根据结果输出 `yes` 或 `no`。
阅读全文