当前位置: 首页 > news >正文

xtu oj Balls

Balls

题目描述

你有若干个彩球排成一列,你可以交换相邻的两个球。 交换后,如果出现包含被交换彩球且长度大于等于3的连续相同颜色彩球,那么这些彩球就会消失,右边的彩球会向左边靠拢填满空间。 现在给你一个操作的序列,请依次输出每次操作后的彩球序列。

输入

输出

每个样例的每行输出一个操作后彩球的状况,如果所有的彩球都消失,输出”Over”。每个样例最后输出一个空行。

样例输入

4
AABABBB
1 3
AAAABBBBC
2 4 4
AAAAAA
1 2
AABAABBB
2 3 1 

样例输出

OverAAABABBBC
COverBABBB
A

分两种情况讨论

1、交换球颜色一样 2、交换球颜色不一样

AC代码

#include<stdio.h>
#include<string.h>
int main(){int T;scanf("%d",&T);while(T--){char a[35]={};scanf("%s",a);int i,j,n,x,t,cnt,la=strlen(a);char tem;scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&x);//互换 tem=a[x-1];a[x-1]=a[x];a[x]=tem;//交换的元素相等 if(a[x]==a[x-1]){int cntR=1,cntL=1;cnt=0; for(j=x+1;j<la;j++){if(a[j]==a[x])cntR++;else break;}for(j=x-2;j>=0;j--){if(a[j]==a[x])cntL++;else break;}cnt=cntL+cntR;//后面的数向前移动 if(cnt>=3){t=x-cntL;for(j=x+cntR;j<la;j++){a[t]=a[j];t++;}la-=cnt;}} else{int cnt1=1,cnt2=1; //右数 for(j=x+1;j<la;j++){if(a[j]==a[x])cnt1++;else break;}if(cnt1>=3){t=x;for(j=x+cnt1;j<la;j++){a[t]=a[j];t++;}la-=cnt1;}//左数 for(j=x-2;j>=0;j--){if(a[j]==a[x-1])cnt2++;else break;}if(cnt2>=3){t=x-cnt2;for(j=x;j<la;j++){a[t]=a[j];t++;}la-=cnt2;}} if(la==0)printf("Over\n");else{for(j=0;j<la;j++){printf("%c",a[j]);}printf("\n");}}printf("\n"); }
} 


http://www.mrgr.cn/news/46451.html

相关文章:

  • DetKDS
  • Ubuntu Server挂载AWS S3成一个本地文件夹
  • 优化神马关键词排名原理(优化神马搜索引擎关键词排名规则)
  • android刷机
  • java开发
  • Tomcat详解
  • secure boot 部分知识
  • 20.安卓逆向-frida基础-hook分析调试技巧2-hookDES
  • web1.0,web2.0,web3.0 有什么区别 详解
  • Linux deepin系统通过编辑crontab来设置定时任务---定时关机
  • 使用pycharm的sftp功能远程操控服务器的时候,遇到了一些问题:Local path ’ ’ is outof project
  • 工厂车间|基于springBoot的工厂车间系统设计与实现(附项目源码+论文+数据库)
  • 极客兔兔Gee-Cache Day6
  • 单片机(学习)2024.10.9
  • 《基于FreeRTOS的STM32超声波智能避障平衡小车,实现了小车的自平衡、超声波避障以及通过智能手机远程控制的功能》+源代码+文献资料+文档说明
  • 【AI知识点】泛化(Generalization)与过拟合(Overfitting)
  • 安全帽未佩戴预警系统 劳保防护用品穿戴监测系统 YOLO
  • RK3588S系统导出和烧入新板子
  • 服务器平均响应时间和数据包大小关系大吗?
  • 3.1 显示层技术演变
  • 自由学习记录(4)
  • level2高频tick数据获取以及策略分享
  • HBase中的Write-Ahead Log 详解
  • 自动猫砂盆是养猫新型智商税吗?测评2024年热门款智能猫砂盆分享
  • 【springboot9735】基于springboot+vue的车辆充电桩
  • java异常详解