当前位置: 首页 > news >正文

OD C卷 - 幼儿园篮球游戏

幼儿园篮球游戏

  • 有一个放倒的线性圆桶,可以从右边放入一个或者多个篮球,每个篮球有独立的编号;
  • 从右边和左边可以取出篮球,当只有一个篮球时,只能从左边取出;
  • 若依次放入1、2、3、4、5共五个编号的篮球,则可以依次取出1、2、3、4、5或者3、1、2、4、5;无法取出5 1 3 2 4编号的篮球;3 1 2 4 5 取出的场景为RLLLL,R表示右边取,L表示左边取;

输入描述:
第一行为依次放入的篮球编号;
第二行为依次取出的编号;
输出描述:
输出取的R/L序列;若无法取出,则输出No

示例1
输入:
4,5,6,7,0,1,2
6,4,0,1,2,5,7
输出:
RLRRRLL

示例2
输入:
4,5,6,7,0,1,2
6,0,5,1,2,4,7
输出:
No

示例3:
输入:
1,2,3,4
1,2,3,5
输出:
No
思路:
双指针

nums = [int(x) for x in input().split(",")]
target_nums = [int(x) for x in input().split(",")]arr = [float('inf') for i in range(300)]left = 0
right = 0
target_pos = 0result = ""
i=0
while(True):if(i>=len(nums)):breakelse :arr[right] = nums[i]right+=1while (True) :if(right <= left):breakelse :if (arr[left] == target_nums[target_pos]) :result += "L"left += 1target_pos += 1continueelif (arr[right-1] == target_nums[target_pos]) :result += "R"right -= 1target_pos += 1continuebreaki+=1if (left != right) :print("NO")
else :print(result)

 


http://www.mrgr.cn/news/4904.html

相关文章:

  • 面试准备算法
  • eNSP 华为单臂路由实现VLAN间通信
  • 有关缓存的一些面试知识
  • 在网站文章中,‌<br>标签对SEO的影响及优化策略
  • (26)微信检查联系人和清粉(针对删除和拉黑)-微信UI自动化(.Net+C#)
  • cesium 实现批量divpoint气泡,及气泡碰撞测试与自动避让
  • 【Kubernetes】k8s集群之包管理器Helm
  • Linux驱动学习之点灯(五,设备树没用平台设备总线)
  • 基于STM32开发的智能家居照明控制系统
  • ansible模块+playbook
  • C++STL初阶(12):stack和queue的初阶实现
  • leetcode-494. 目标和
  • 【LeetCode:3】无重复字符串的最长子串(Java)
  • 【精品实战项目】深度学习预测、深度强化学习优化、附源码数据手把手教学
  • 设计模式的七大原则
  • 06 Oracle数据是怎么存储的
  • 数据库机器上停service360safe
  • BUG——imx6u开发_结构体导致的死机问题(未解决)
  • 动态规划(二)
  • 03:电容的充放电特性及应用举例