幸运序列(lucky)
【问题描述】
Lsy喜欢幸运数字,众所周知,幸运数字就是数字位上只有4和7的数字。
但是本题的幸运序列和幸运数字完全没关系,就是一个非常非常普通的序列。哈哈,是不是感觉被耍了,没错,你就是被耍了。
Lsy现在手上有一个长度为N的幸运序列a,他想这样子折腾这个序列:
- 如果已经折腾了k次了,就结束,否则找到一个最小的i,使得(a[i]=’4’ && a[i+1]=’7’) //0<i<N;
- 找不到这样的i就结束;
- 如果odd(i),令a[i+1]=a[i],否则令a[i]=a[i+1],继续第一步。
Lsy想让你告诉他最后序列折腾成什么样子了。
需要注意的是,本题的序列从1开始编号
【输入文件】
第一行N,K;
第二行N个数描述序列a。
【输出文件】
N个数,输出最后的序列。
【输入样例】
|
7 4 4727447 |
【输出样例】
|
4427477 |
【数据规模和约定】
20%: 小数据
100%的数据中N<=100000,K<=109。
因为后面的不会对前面产生影响 所以顺序处理就行了
如果pos为偶数,那么a[i]=a[i+1]下一次就得从pos-1开始
反之从pos开始
对于过大的p我们可以发现:
1.当pos=n-1时,无论怎样都不能,直接退出
2.当出现循环时,将k取膜
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n,k,pos,x,vis[];
char s[];
int main()
{
//freopen("lucky.in","r",stdin);
//freopen("lucky.out","w",stdout);
cin>>n>>k;
cin>>s;
pos=;x=;
while (k--)
{
while (pos<n-&&!(s[pos]==''&&s[pos+]==''))
pos++;
if (pos==n-) break;
if (vis[pos]==) vis[pos]=x;
else
{
k%=(x-vis[pos]);
}
if (pos%==) s[pos+]=s[pos];
else
{
s[pos]=s[pos+];
pos=pos-;
}
x++;
}
cout<<s;
}
幸运序列(lucky)的更多相关文章
- [测试题]幸运序列(lucky)
Description Ly喜欢幸运数字,众所周知,幸运数字就是数字位上只有4和7的数字. 但是本题的幸运序列和幸运数字完全没关系,就是一个非常非常普通的序列.哈哈,是不是感觉被耍了,没错,你就是被耍 ...
- 纪中5日T3 1566. 幸运锁(lucky.pas/c/cpp)
1566. 幸运锁(lucky.pas/c/cpp) 题目描述 有一把幸运锁,打开它将会给你带来好运,但开锁时需要输入一个正整数(没有前导0).幸运锁有一种运算,对于一个正整数,返回他的相邻两位数字间 ...
- 2018.08.27 lucky(模拟)
描述 Ly 喜欢幸运数字,众所周知,幸运数字就是数字位上只有 4 和 7 的数字. 但是本题的幸运序列和幸运数字完全没关系,就是一个非常非常普通的序列. 哈哈,是 不是感觉被耍了,没错,你就是被耍了. ...
- 我的Python成长之路---第一天---Python基础(5)---2015年12月26日(雾霾)
六.流程控制 与C语言不通的事Python的流程控制的代码块不是用{}花括号表示的,而是用强制缩进来,而且缩进必须一致,官方推荐是使用4个空格,不建议使用使用tab(制表符)做缩进,一是不同的系统ta ...
- python基础(3)---流程控制
流程控制 与C语言不通的是python的流程控制代码块不是用{}花括号表示的,而是强制缩进来控制的:而且缩进必须一致,官方推荐是使用4个空格,不建议使用tab(制表符)做缩进,一是不同的系统tab所占 ...
- Lesson 12 Goodby and good luck
Text Our neighbour, Captain Charles Alison, will sail from Portsmouth tomorrow. We'll meet him at th ...
- NOIP复习赛20161117
题目链接:http://files.cnblogs.com/files/candy99/%E9%A2%98%E7%9B%AE1117.pdf A n个等比数列求和公式(都感觉数列忘光了) %1e9+7 ...
- Codeforces Beta Round #91 (Div. 2 Only) A. Lucky Division【暴力/判断是不是幸运数字4,7的倍数】
A. Lucky Division time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- SGU 258 Almost Lucky Numbers 接近幸运数(数位DP)
题意: 定义一个具有2n位的正整数,其前n位之和与后n位之和相等,则为lucky数.给定一个区间,问有多少个正数可以通过修改某一位数从而变成lucky数?注意不能含前导0. 思路: 我的想法是记录那些 ...
随机推荐
- Alpha第九天
Alpha第九天 听说 031502543 周龙荣(队长) 031502615 李家鹏 031502632 伍晨薇 031502637 张柽 031502639 郑秦 1.前言 任务分配是VV.ZQ. ...
- SQLAlchemy 教程 —— 基础入门篇
SQLAlchemy 教程 -- 基础入门篇 一.课程简介 1.1 实验内容 本课程带领大家使用 SQLAlchemy 连接 MySQL 数据库,创建一个博客应用所需要的数据表,并介绍了使用 SQLA ...
- 20145237 《Java程序设计》第4周学习总结
20145237 <Java程序设计>第4周学习总结 教材学习内容总结 一. 继承 . 定义:面向对象中,涉及对象过多时容易出现重复行为,为了避免这种情况,就可把重复的部分写成父类,由子 ...
- Flask jinja2 全局函数,宏
内置全局函数 dict()函数,方便生成字典型变量 {% set user = dict(name='Mike',age=15) %} <p>{{ user | tojson | safe ...
- LR回放https协议脚本失败: 错误 -27778: 在尝试与主机“www.baidu.com”connect 时发生 SSL 协议错误
今天用LR录制脚本协议为https协议,回放脚本时出现报错: Action.c(14): 错误 -27778: 在尝试与主机"www.baidu.com"connect 时发生 S ...
- 完美解决ubuntu Desktop 16.04 中文版firefox在非root用户不能正常启动的问题
ubuntu安装好后,默认安装有firefox浏览器,不过,非root的账户登录,双击firefox图标,居然出现如下提示:Your Firefox profile cannot be loaded. ...
- PHP处理上传文件
HTML中使用type = 'file'类型的表单可以向服务器上传文件: 上传文件的表单必须在form中定义enctyp = 'multipart/form-data': HTML代码如下: < ...
- c语言中宏定义和常量定义的区别
他们有共同的好处就是"一改全改,避免输入错误"哪两者有不同之处吗?有的. 主要区别就在于,宏定义是在编译之前进行的,而const是在编译阶段处理的 宏定义不占用内存单元而const ...
- zTree根据json选中节点,并且设置其他节点不可选
首先,在适配目录树时,使用checkbox形式,配置代码如下: var settingCatalog = { check:{ enable: true }, data:{ simpleData:{ e ...
- javascript实现浏览器窗口大小被改变时触发事件的方法
转载 当浏览器的窗口大小被改变时触发的事件window.onresize 为事件指定代码: 复制代码代码如下: window.onresize = function(){ } 例如: 浏览器可见区域信 ...