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

帝国建站程序中国招标投标网

帝国建站程序,中国招标投标网,做视频网站要什么软件,鼎成中考开卷通有关网站做的电子书2833.给你一个长度为 n 的字符串 moves ,该字符串仅由字符 ‘L’、‘R’ 和 ‘’ 组成。字符串表示你在一条原点为 0 的数轴上的若干次移动。 你的初始位置就在原点(0),第 i 次移动过程中,你可以根据对应字符选择移动方…

2833.给你一个长度为 n 的字符串 moves ,该字符串仅由字符 ‘L’、‘R’ 和 ‘’ 组成。字符串表示你在一条原点为 0 的数轴上的若干次移动。
你的初始位置就在原点(0),第 i 次移动过程中,你可以根据对应字符选择移动方向:
如果 moves[i] = ‘L’ 或 moves[i] = '
’ ,可以选择向左移动一个单位距离
如果 moves[i] = ‘R’ 或 moves[i] = '’ ,可以选择向右移动一个单位距离
移动 n 次之后,请你找出可以到达的距离原点 最远 的点,并返回 从原点到这一点的距离 。
示例 1:
输入:moves = “L_RL__R”
输出:3
解释:可以到达的距离原点 0 最远的点是 -3 ,移动的序列为 “LLRLLLR” 。
示例 2:
输入:moves = “R__LL
输出:5
解释:可以到达的距离原点 0 最远的点是 -5 ,移动的序列为 “LRLLLLL” 。
示例 3:
输入:moves = "
______"
输出:7
解释:可以到达的距离原点 0 最远的点是 7 ,移动的序列为 “RRRRRRR” 。

  • 我的思路:首先这可以看成一棵二叉树,所以直接 dfs。首先入参,为了知道遍历到哪里了,用一个 int 表示当前 moves 下标。由于可以向左或者向右,所以用两个 int 表示向两边移动的距离;递归出口,当遍历完这棵树也就是 moves 遍历到最后一个字符时返回 max(左距离,右距离)。如果在遍历的过程中发现遍历到某个点时已经遇到过此时向(左,右)移动了多少距离这种情况,那可以直接返回 0 了,因为这种可能性我们已经考虑过了(比如 l__r_,我们可能是 llrr_ ,也可能是lrlr_,那此时其实就是重复的情况了,遍历到第五个点的 _ 时都是还在原点);否则就看当前字符了,为 L 说明向左走了一步,左距离 加 1,相对应的,别忘了,这就代表着右距离减了 1, R 同理,如果为 _ 就返回 max(左,右)
  •   char[] moves;// l[i][j] 遍历到第 i 个点并且此时往左走了长度 jint[][] l;// // l[i][j] 遍历到第 i 个点并且此时往右走了长度 jint[][] r;public int furthestDistanceFromOrigin(String moves) {this.moves = moves.toCharArray();int n = this.moves.length;l=new int[n][n];r=new int[n][n];return dfs(0,0,0);}// left 和 right 最多只可能有一个大于 0,一正一负,或者都为 0int dfs(int cur,int left,int right){// 遍历完了if(cur==moves.length){return Math.max(left,right);}// 如果这种情况已经考虑过了 return 0if((left>=0 && l[cur][left]==1) || (right>=0 && r[cur][right]==1))return 0;// 如果在左边,记录这种情况if(left>=0)l[cur][left]=1;// // 如果在右边,记录这种情况if(right>=0)r[cur][right]=1;if(moves[cur]=='L')return dfs(cur+1,left+1,right-1);if(moves[cur]=='R')return dfs(cur+1,left-1,right+1);return Math.max(dfs(cur+1,left+1,right-1),dfs(cur+1,left-1,right+1));}
    
  • 其实这题我想的复杂了,因为当遇到 _ 时,你的选择丝毫不影响之后的选择。也就是说你只需要记录有几个 _ ,然后看剩下的 L 和 R 会让你走到哪里,如果在左边你就把 _ 都选择往左走,在右边同理。
  •   public int furthestDistanceFromOrigin(String moves) {int x=0;int distance=0;for(char c:moves.toCharArray()){if(c=='_')x++;else distance+=c=='L'?-1:1;}return x+Math.abs(distance);}
    
http://www.15wanjia.com/news/181258.html

相关文章:

  • 网站什么内容四川省建设勘察设计网站
  • 专门做化妆的招聘网站南安seo教程
  • 怎么才能成功做网站怎么看国外设计网站
  • 怎么给网站做优化wordpress字体编辑器
  • 重庆工信部网站四川省住房和城乡建设厅网站官网
  • 租二级目录做网站做土地租赁买卖的网站有哪些
  • 深圳沙井公司网站建设html成品网页免费模板下载
  • 戏曲网站建设的可行性分析制作小程序难吗
  • 长春网站公司哪家好建宣传网站
  • 购买域名后怎么建网站医疗器械四大龙头企业
  • 品牌词类的网站怎么做优化友情链接有用吗
  • dlink nas做网站网络门户网站
  • 苏州外贸营销网站建设企业网站备案资料样本
  • 企业网站托管常见问题建立门户网站需要什么技术
  • 高端网站鉴赏龙华网站建设推广外包
  • 室内设计师之路网站现在做个app多少钱
  • 网站 先建设还是先等级保护备案建筑网站案例
  • dedecms做国外网站网店推广发展趋势
  • 网站开发教程视频青岛网站厉害的公司
  • 欢迎进入中国建设银行网站泰安网站建设报价
  • 做网站怎么修改网址好看影视大全免费下载安装
  • 宁波快速制作网站网络营销者的应聘要求
  • 企业网站建设需要哪些软件百度百科推广费用
  • 网站开发设计文档模板营销型网站如何制作
  • 合肥企业建站系统模板2 如何写一份详细的网站开发方案
  • 广州品牌网站设计珠海网站建设优化
  • 衡阳县建设局网站做网站需要那些编程语言
  • 网站建设与网页设计制作教程网站改版好吗
  • sem运营有出路吗wordpress 搜索引擎优化
  • 龙口网站建设wordpress上传上限