// SM-(开心消消乐).cpp : 定义控制台应用程序的入口点。
//例如输入:15个数字111234443555367 -> 267
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
void fun(char str1[],char str2[])
{
int flag=5;//15个数字3个一组,最多5次
int i;int j;
while (flag)
{
j=0;
for ( i=0;str1[i+2]!='\0';)
{
if (str1[i]==str1[i+1]&&str1[i]==str1[i+2])
{
i+=3;continue;
}
else
{
str2[j++]=str1[i];
i++;
}
}
while (i<16)
{
str2[j++]=str1[i];
i++;
}
str2[j]='\0';
str1=str2;
flag--;
}
for (int j=0;str2[j]!='\0';j++)
{
cout<<str2[j];
}
cout<<endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
char a[16];
char b[1000]={0};
cin.getline(a,16);
fun(a,b);
return 0;
}(2)华为机试 ——消消乐
最新推荐文章于 2026-05-07 11:02:23 发布
本文介绍了一个简单的消除游戏算法实现过程,通过C++代码演示如何处理一串数字,消除连续重复的三个数字,并输出最终结果。该算法适用于类似“开心消消乐”的游戏逻辑。

873

被折叠的 条评论
为什么被折叠?



