洛谷P1203 坏掉的项链

首先看到这题的数据样例,3<=n<=350,不是水水暴搜就过了嘛

不难想到暴力解,先破环成链

因为可能有全部都可换成一种颜色的情况,考虑每次遇到s[i]==s[i+1]的情况,直接跳过,

如果最后结局ans仍为初始值(推荐-1),直接输出项链大小n,否则判断当前节点是否为white,如果是white就赋值一种颜色,左右暴搜,如果暴搜过程中发现得到的值比n还要大,直接返回n,然后赋值另一种继续搜,每次ans=max{ans, check(i)},最后赋值回white,然后就A了,很水的题对吧

下面贴一下核心代码

int check(int x){
int ans=0;
char c2 = a[x+1],c1=a[x];
for(int i=x;;i--){
if(a[i]==c1)ans++;
else if(a[i]=='w')ans++;
else break;
if(ans >= n)return n;
}
for(int i=x+1;;i++){
if(a[i]==c2)ans++;
else if(a[i]=='w')ans++;
else break;
if(ans >= n)return n;
}
return ans;
}

真的,好困,,好困(゚Д゚≡゚Д゚)谁在说话?

最新文章

  1. UE4新手引导之下载和安装虚幻4游戏引擎
  2. 【JS】falsy与truthy
  3. [Android Pro] app_process command in Android
  4. SPSS数据分析—简单线性回归
  5. Java for LeetCode 188 Best Time to Buy and Sell Stock IV【HARD】
  6. jQuery dialog 简介
  7. 转:javascript 中select的取值
  8. HDU 4259 - Double Dealing(求循环节)
  9. 【Android - 框架】之OkHttp的使用
  10. js跨越小结
  11. Android面试题(文章内容来自他人博客)
  12. mysql的主从复制原理
  13. 浅谈一下SSI+Oracle框架的整合搭建
  14. bfs或者dfs Good Bye 2016 D
  15. 修改config.php配置
  16. python ——面向对象进阶
  17. MYSQL DISTINCT Optimization
  18. [区块链\理解BTCD源码]GO语言实现一个区块链原型
  19. 使用 https://git.io 缩短 a GitHub.com URL.
  20. 将一幅图像取平均值缩小N倍实现方法

热门文章

  1. [vsCode]Visual Studio Code环境变量不同步
  2. vagrant搭建centos7
  3. response status is 500 https://localhost:7129/swagger/v1/swagger.json
  4. 使用nvm安装不同版本的NodeJS
  5. kubectl的vistor模式
  6. Ngrinder(性能测试工具)-(一)
  7. imputation文献-A systematic evaluation of single-cell RNA-sequencing imputation methods
  8. Java数组之三种初始化及内存分析
  9. windows环境go安装和goland激活
  10. 苹果Macbook快捷键使用大全