2022-05-04:比如,str = “ayxbx”,
有以下4种切法 : a | yxbx、ay | xbx、ayx | bx、ayxb | x,
其中第1、3、4种切法符合:x和y的个数,至少在左右两块中的一块里有相同的数量,
所以返回3。
给定一个字符串str,长度为N,
你有N-1种划分方法,把str切成左右两半,返回有几种切法满足:
x和y的个数,至少在左右两块中的一块里有相同的数量。
来自微软。

答案2022-05-04:

遍历统计x和y的个数。再次遍历做判断。
时间复杂度:O(N)。

代码用rust编写。代码如下:

fn main() {let answer = split_same_number_ways("ayxbx");println!("answer = {}", answer);
}fn split_same_number_ways(str: &str) -> isize {if str.len() == 0 {return 0;}let mut x_all: isize = 0;let mut y_all: isize = 0;for c in str.chars() {x_all += if c == 'x' { 1 } else { 0 };y_all += if c == 'y' { 1 } else { 0 };}let mut left_x: isize = if str.chars().nth(0).unwrap() == 'x' {1} else {0};let mut left_y: isize = if str.chars().nth(0).unwrap() == 'y' {1} else {0};let mut ans: isize = 0;for i in 1..str.len() {if left_x == left_y || (x_all - left_x) == (y_all - left_y) {ans += 1;}left_x += if str.chars().nth(i as usize).unwrap() == 'x' {1} else {0};left_y += if str.chars().nth(i as usize).unwrap() == 'y' {1} else {0};}return ans;
}

执行结果如下:


左神java代码

2022-05-04:比如,str = “ayxbx“, 有以下4种切法 : a | yxbx、ay | xbx、ayx | bx、ayxb | x, 其中第1、3、4种切法符合:x和y的个数,至少在相关推荐

  1. 2022.05.04 HTML学习第三天

    图像标签的src属性一定要写,src属性决定了引入哪张图片,或者是图片的路径是哪一个. 注意点:1.图像标签可以写很多个属性,但是属性必须在标签名的后面. 2.属性不分先后顺序,标签名与属性,属性与属 ...

  2. 【2022.09.04】关于升级打怪学编程活动的通知

    把电子学会全国青少年软件编程等级考试作为游戏的关卡,带着小朋友们升级打怪. 升级打怪计划 每周日晚20:00,我在腾讯会议中进行直播答疑,解决小朋友们本周遇到的编程问题,辅助小朋友们提升编程的技能. ...

  3. 【2022.05.31】大学本科毕业总结,再见北理工

    [2022.05.31]大学本科毕业总结,再见北理工 今天顺利完成答辩,成功毕业成为无业游民(doge) 一时思绪万千,感觉前几天才刚入学,今天四年已结束就已经毕业 答辩完身上的包袱感觉少很多,但是也 ...

  4. 每日总结(2022/05/17-)

    2022/05/17- 线程配置 实验设备 实现2个矩阵(Width=2048, Height=1024)的相加,输入的矩阵A,B按照以下要求初始化,矩阵A的初始值全为本人学号的最后1位数字,矩阵B的 ...

  5. 『金融帝国实验室』(Capitalism Lab)〔房地产DLC〕最新开发动态(2022.09.04)

    『金融帝国实验室』(Capitalism Lab)游戏开发商Enlight Software于2022.09.04在官方论坛(https://www.capitalism2.com/forum/vie ...

  6. 硬件大熊原创合集(2022/05更新)

    2022/05月份更新的篇章 NFC之华为AIPASS认证:测试系统简介 NFC之华为AIPASS认证:测试用例简介 智能门锁:人脸识别技术 清晰认知事物概念 传统的职业坐标体系中,个体依赖于工作本身 ...

  7. 程序员之间的鄙视链-2022.10.04

    世界上最难的编程语言[女生慎入][比较排名] 世界上最难的编程语言[女生慎入][比较排名]_哔哩哔哩_bilibili 程序猿之间的鄙视链,你在第几层 程序猿之间的鄙视链,你在第几层_Java架构师联 ...

  8. 2022/08/04、05 day01-2/02:Redis数据类型

    文章目录 今日内容 数据存储类型介绍 string **Redis数据存储格式** **string类型** **string类型数据的基本操作** **string类型数据的扩展操作** **str ...

  9. 【愚公系列】2022年04月 微信小程序-项目篇(公交查询)-05线路查询

    文章目录 前言 1.相关API 2.相关案例 一.站点搜索 1.wxml 2.js 3.效果 总结 前言 1.相关API 接口地址:https://api.jisuapi.com/transit/li ...

最新文章

  1. aspx页面事件执行顺序
  2. content type 介绍
  3. 【Tools】MarkDown教程(三)-MarkDown表格和公式
  4. UOJ #586. 旅行问题
  5. 音视频技术开发周刊 | 200
  6. 18行代码解决:(C语言)L1-046 整除光棍 (20分)
  7. 测试用例优先级划分_全面的质量保障体系之测试用例分级
  8. 定义列表的特点html,HTML的列表表格表单知识点
  9. bean交个spring和new比较区别
  10. 大数据之-Hadoop3.x_Yarn_基础架构---大数据之hadoop3.x工作笔记0141
  11. memcached的安装(server、client)、magent整合
  12. 【网页】如何下载网页中mathplayer插件中的pdf文件
  13. GitHub 10分钟教程
  14. elasticsearch-carrot2插件打包
  15. DVWA(全级别通关教程详解)
  16. office插件开发_OneKeyTools:强大PPT插件
  17. echarts饼状图设置位置
  18. background简写
  19. 谈谈privoxy:关于广告过滤和自动代理切换
  20. 自然语言处理(NLP)常用开源工具总结----不定期更新

热门文章

  1. flutter疑难杂症之记一次RenderBox测量坐标错误
  2. 奇瑞汽车用鸿蒙,奇瑞配鸿蒙,是自我放弃还是独辟蹊径?
  3. 如何理解全新的用户增长模型“6R模型”?和AARRR有何不同?
  4. VUE高仿饿了么app开发思维导图
  5. gta5线上服务器未响应,GTA5基本故障排除方法:安装、崩溃、未响应、画面表现差...
  6. 伺服电动缸-力姆泰克DMB系列
  7. 2022-2028全球与中国WIFI芯片组市场现状及未来发展趋势
  8. 迅雷X 10.1.7.262正式版去广告本地SVIP 落尘之木修改便携版竖屏版2018.12.17更新
  9. 不小心点了计算机一键还原怎么操作,电脑系统如何一键还原,教您电脑系统一键还原的操作...
  10. Hive复杂数据类型使用