Vicious Keyboard CodeForces - 801A (暴力+模拟)
题目链接
题意:
给定一个字符串,最多更改一个字符,问最多可以有多少个“VK”子串?
思路:
由于数据量很小,不妨尝试暴力写。首先算出不更改任何字符的情况下有多个VK字串,然后尝试每一次更改一个位置的字符,然后暴力算出有多少个VK,取出这些答案中 的最大值,即是答案。
代码:
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <queue> #include <stack> #include <map> #include <set> #include <vector> #define rep(i,x,n) for(int i=x;i<n;i++) #define repd(i,x,n) for(int i=x;i<=n;i++) #define pii pair<int,int> #define pll pair<long long ,long long> #define gbtb std::ios::sync_with_stdio(false) #define MS0(X) memset((X), 0, sizeof((X))) #define MSC0(X) memset((X), '\0', sizeof((X))) #define pb push_back #define mp make_pair #define fi first #define se second #define gg(x) getInt(&x) using namespace std; typedef long long ll; inline void getInt(int* p); const int maxn=1000010; const int inf=0x3f3f3f3f; /*** TEMPLATE CODE * * STARTS HERE ***/ char s[maxn]; int len; int main() {scanf("%s",s);len=strlen(s);int ans=0;int cnt;for(int i=0;i<=len;i++){if(s[i]=='V'){s[i]='K';}else{s[i]='V';}cnt=0;for(int j=0;j<len-1;j++){if(s[j]=='V'&&s[j+1]=='K'){cnt++;}}if(s[i]=='V'){s[i]='K';}else{s[i]='V';}ans=max(ans,cnt);}printf("%d\n",ans );return 0; }inline void getInt(int* p) {char ch;do {ch = getchar();} while (ch == ' ' || ch == '\n');if (ch == '-') {*p = -(getchar() - '0');while ((ch = getchar()) >= '0' && ch <= '9') {*p = *p * 10 - ch + '0';}}else {*p = ch - '0';while ((ch = getchar()) >= '0' && ch <= '9') {*p = *p * 10 + ch - '0';}} }
转载于:https://www.cnblogs.com/qieqiemin/p/10236544.html
Vicious Keyboard CodeForces - 801A (暴力+模拟)相关推荐
- 【2018.3.24】模拟赛之四-ssl2548 旋转【暴力模拟】
正题 大意 给出一块黑块和白块组成的版,将其旋转90°后和之前的黑块叠加,求最初始和每次旋转后的黑块数. 解题思路 暴力模拟不解释 代码 #include<cstdio> #include ...
- HLJUOJ1117(暴力模拟)
八数码 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 109 Solved: 19 [Submit][Status][Web Board] Desc ...
- 牛客小白月赛28 E-会当凌绝顶,一览众山小 线段树+二分暴力模拟
牛客小白月赛28 E-会当凌绝顶,一览众山小 线段树+二分暴力模拟 题意 思路 Code 传送门: https://ac.nowcoder.com/acm/contest/16081/E 题意 登山顺 ...
- 【暴力+模拟】HDU-1346 Coconuts, Revisited
注解 1.暴力模拟,从题目给定的数目减一开始枚举人数,直到人数只有1人为止.最先找到的满足题目要求的人数,就是答案. 代码 #include <iostream>using namespa ...
- 365. 水壶问题-暴力模拟倒水过程-递归法
365. 水壶问题-暴力模拟倒水过程-递归法 有两个水壶,容量分别为 jug1Capacity 和 jug2Capacity 升.水的供应是无限的.确定是否有可能使用这两个壶准确得到 targetCa ...
- CodeForces - 979D Kuro and GCD and XOR and SUM(字典树+暴力+模拟)
题目链接:点击查看 题目大意:说实话看到这么复杂而且还是英文的题面我是拒绝的,但题还是得补啊,就去百度找的题解看题意,题意大概是这样的: 给出n个操作,每个操作分为两种类型: 1 x:向集合中插入x ...
- 树上问题 ---- E. Fib-tree(斐波那契数的性质 + 暴力模拟 + 认真计算复杂度)
题目大意: 一个树是FIBFIBFIB树得是节点个数为斐波那契数,且(注意这个且)!!此外满足下面条件一个: 1.只有一个点 2.可以切一条边使得分出的两个子树都是FIBFIBFIB树. 给你一棵树, ...
- 51nod 1414 冰雕 思路:暴力模拟题
题意是现在有n个雕像把一个圆等分了,每一个雕像有一个吸引力. 叫你不移动雕像只去掉雕像让剩下的雕像还能等分这个圆,求剩下的雕像的吸引力之和的最大值. 显然去掉后剩下雕像的间隔应该是n的因子,因为这样才 ...
- CodeForces - 1491E Fib-tree(模拟)
题目链接:点击查看 题目大意:给出一棵树,问是否为斐波那契树.斐波那契树的定义是,树的大小为斐波那契数列的其中一项,且可以通过删除掉一条边使其拆分的两个子树也为斐波那契树 题目分析:需要观察到,大小为 ...
最新文章
- 送书!送书!送书!重要的事情说三遍
- TPF111视频信号放大器研究
- XML-RPC远程方法调用
- 异常检测机器学习_使用机器学习检测异常
- python开发技术详解代码_python开发技术详解(四)
- [转载] python set 集合详解
- 模块d3d12.dll加载失败_语音控制模块
- mysql升更新命令_MySQL升级的3种方法
- vmplayer虚拟机中如何找到网络配置的窗口
- 高中计算机考试解析,2019下半年教师资格面试考试高中信息技术试题分析
- 远程服务器时Ubuntu报错:qt.qpa.xcb: could not connect to display
- 体检导检系统服务器系统,喜仕达体检中心导检系统
- 米扑代理:爬虫代理IP哪家好呢
- CSS之vmin和vmax
- 中小学python编程教学-小学信息技术教学中进行Python 编程语言教学的策略
- 腾讯乐享社区是什么?如何使用腾讯乐享?如何连接腾讯乐享和企业微信?
- 邮箱前台html,WEB独特的邮箱
- 【IoT】 产品设计之拆机报告:天猫精灵之万能红外遥控器
- rk3288 8080lcd时序分析和TFT-RGB接口
- Flutter强制某个页面横屏