Red And Green
2024-09-05 05:15:34
#include <stdio.h>
#include <string.h> #define LENGTH 50 /*
* 1.字符序列中有一个字符肯定是分界点,它的左边全为红色,右边全为绿色
* 2.因此 该点的左边的绿色要翻转为红色 该点右边的红色要翻转成绿色
* 3.统计每个点需要翻转的次数 从中找出最小的次数即为答案
* */ int main() {
char brick[LENGTH];
int len;
scanf("%s", brick);
len = strlen(brick);
int leftGreen[LENGTH] = {};
int rigthRed[LENGTH] = {}; for (int i = ; i < len; ++i) {
leftGreen[i] = leftGreen[i - ] + (brick[i - ] == 'G' ? : );
}
for (int j = len - ; j >= ; --j) {
rigthRed[j] = rigthRed[j + ] + (brick[j + ] == 'R' ? : );
}
int res = len;
for (int k = ; k < len; ++k) {
res = (res > (leftGreen[k] + rigthRed[k]) ? (leftGreen[k] + rigthRed[k]) : res);
} printf("%d",res);
}
最新文章
- sizeof和strlen()的区别
- ASP.NET状态管理之四(暂存状态HttpContext.Items)
- ASP.NET MVC强制返回XML
- 从hello-world 开始 <;contiki学习之四>;
- C++之运算符重载(1)
- Oracle- 初识
- Http(1)
- jquer “$” 扩展(笔记)
- Ninject简介(转)
- MongoDB学习总结(一) —— Windows平台下安装
- activiti 一个流程的运转步骤 以请假流程为例
- IE10和IE11中滑动条遮挡页面问题
- beta冲刺总结
- 2019“嘉韦思杯”3.30初赛一部分Write Up
- svn&#160;checkout&#160;实用小技巧
- keepalived 安装篇-个人实践-编译安装
- Glide4 用法总结 MD
- FileClassify文件日期分类工具
- SQL[Err] ORA-00979: not a GROUP BY expression
- JAVA常用工具类汇总