重生之我会用C加加了


私信TA

用户名:dotcpp0602879

访问量:3682

签 名:

放纵是本性,克制是智慧。

等  级
排  名 414
经  验 4809
参赛次数 3
文章发表 21
年  龄 21
在职情况 学生
学  校 江西科技师范大学
专  业 大数据

  自我简介:

我唯一会的而且擅长的也就只有Python,如果不能在Python领域取得好的成绩,那人生还有什么意义呢!

TA的其他文章

解题思路:
就是想吐槽一下:题目都说了由不同字母组成 但是测试用例有相同的 害我第一次没通过 真老6
注意事项:
方法:就是要用下标1-n来对应input输入的字母保证不会重复 最后再输出下标对应的字母就ok了
参考代码:


def dfs(step):

    if step-1==num-1: # 一共就num-1个字母  但是实际step-1才是真正temp里面的数据个数

        print("".join(temp[1:]))

    for i in range(1,num):

        if exist[i]: # 如果数据没有被使用 就使用

            exist[i]=0# 使用了就要设置0不可再次使用

            temp[step]=list1[i]

            step+=1

            dfs(step) # 回溯前后

            step-=1

            exist[i]=1# 回溯 返回之前没有被使用状态


list1=list(input())

list1.insert(0,0) # 下标对应 保证list1[1] 就是对应第一个字母

num=len(list1)

temp=list(0 for i in range(num))# 存放数据

exist=list(1 for i in range(num)) # 数据不能重复

dfs(1)


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区