0
已采纳
邵逸儒
中级天翼
中级天翼
定义全局 a[101];
定义 n,m,ans=0;
输入n,m;
循环(int i=0;i<=n-1;i++) 输入a[i];
循环(int i=0;i<=n-1;i++)
{
循环(int k=i;k<=n-1;k++)
{
如果(a[k]==m) ans++;
否则 break;
}
如果(ans>=3) i=i+ans-1;
否则 输出a[i],' ';
ans=0;
}
输出endl;
0
梁锦程
高级光能
高级光能
for (int i=1;i<=n;i++)
if (a[i]==x&&a[i+1]==x&&a[i+2]==x)
while (a[i]==x)
{
a[i]=0;
i++;
}
0
谢祎恒
中级守护
中级守护
思路:题目说指定一个数a,如果该数组中有3个及3个以上的a连续出现,则该数字将会从数组中消除,即先判断i,i+1,i+2(数组中)是否是一样的数,之后用while循环,只要一直是这个数,就赋值为数据范围外的任意一个数,最后输出时只要不是那个数,就输出,伪代码如下
#include<iostream> using namespace std; int main() { int ; 定义 cin>> >> ; for(i=0;i<n;i++) { cin>> ; } 输入 for(i=0;i<n;i++) { if(判断是否是连续的三个一样的数) { while(如果一直等于那个数的话) { 则将此数赋值为数据范围之外的数(如-1) } } } for(i=0;i<n;i++) { if(不等于-1(此数可更改)) cout<< <<" ";输出 } return 0; }
0
0