面试-字符串1

应用

第1个字符串:R

第2个字符串:BR

第3个字符串:RBBR

第4个字符串:BRRBRBBR

规律:第i个字符串 = 第i-1个字符串取反 + 第i-1个字符串,其中B、R互为相反字符。求第n个字符串的第k个字符为多少?n从1开始、k从0开始。

实现

python 复制代码
N = int(input("请输入第几个字符串:"))
K = int(input("请输入第几个字符:"))

first_string = "R"
current_chars = list(first_string)

#print(current_chars)
print(first_string)

def Nth_string(N, K, current_chars):
    
    next_chars = []

    if N == 1:
        # pass
        print(f"目标字符为:{current_chars[K]}")
    else:

      for i in range(0, len(current_chars)):
        
          if current_chars[i] == "R":
              next_chars.append("B")
          else:
              next_chars.append("R")
        
      for j in range(0, len(current_chars)):

          next_chars.append(current_chars[j])

      
      #print(next_chars)
      
      next_string = ""
      for k in next_chars:
          next_string = next_string + k
      print(next_string)

      Nth_string(N-1, K, next_chars)

    

Nth_string(N, K, current_chars)
powershell 复制代码
请输入第几个字符串:5
请输入第几个字符:3
R
BR
RBBR
BRRBRBBR
RBBRBRRBBRRBRBBR
目标字符为:R
相关推荐
冷月半明15 分钟前
Python项目打包指南:PyInstaller与SeleniumWire的兼容性挑战及解决方案
python·selenium
冷月半明15 分钟前
《Pandas 性能优化:向量化操作 vs. Swifter 加速,谁才是大数据处理的救星?》
python·数据分析·pandas
蹦蹦跳跳真可爱58921 分钟前
Python----机器学习(基于PyTorch的线性回归)
人工智能·pytorch·python·机器学习·线性回归
搞不懂语言的程序员1 小时前
装饰器模式详解
开发语言·python·装饰器模式
mosquito_lover11 小时前
矿山边坡监测预警系统设计
人工智能·python·深度学习·神经网络·视觉检测
船长@Quant1 小时前
PyTorch量化进阶教程:第二章 Transformer 理论详解
pytorch·python·深度学习·transformer·量化交易·sklearn·ta-lib
攻城狮7号1 小时前
【第一节】Python爬虫基础-HTTP基本原理
爬虫·python·python爬虫
IT乐手1 小时前
adb logcat 写文件乱码的解决方案
android·python
Python测试之道1 小时前
Deepseek API+Python 测试用例一键生成与导出 V1.0.6(加入分块策略,返回更完整可靠)
开发语言·python·测试用例
SRC_BLUE_171 小时前
Python GUI 编程 | QObject 控件基类详解 — 定时器
开发语言·数据库·python