还是比较简单的
2023-03-15 21:14:46
发布于:北京
297阅读
0回复
0点赞
好久没发题解了,今天来发一个
咳咳,回归正题。如题目所说,我们需要删除第一次出现的m
但是这样就太麻烦了。怎么办呢?
我们可以这样:如果遇到第一次出现的m,我们就跳过
怎么实现呢?直接这样吗?
if(a[i] != m) cout << a[i] << " ";
这样是不对的,注意题目中的一句话:“删除在第一行的 n 个整数中<第一次>出现数字 m”
没错,是第一次出现的
这该怎么办呢?
我们只需要加一个变量就可以了
最终的代码就是下面的这样
#include <bits/stdc++.h.>
using namespace std;
int a[1000010];
int main()
{
int n;
cin >> n;
for(int i = 1; i <= n; i++) cin >> a[i];
int m;
bool temp = 0;
cin >> m;
for(int i = 1; i <= n; i++)
{
if(a[i] != m || temp == 1) cout << a[i] <<" ";
else temp = 1;
}
return 0;
}
//已开启防抄袭
最后来个总结。总之这道题挺简单的
只需要注意一下题目的要求就可以啦
今天就到这里咯,拜拜
全部评论 3
其实如果要防抄袭你可以在关键字里面用统一码控制符写个二进制的by xxx罢
2025-03-25 来自 广东
0解除防抄袭的方法是把#include <bits/stdc++.h.>改为#include <bits/stdc++.h>注:后面少了个.
2024-01-18 来自 江苏
0解的不错
2023-08-29 来自 江苏
0
有帮助,赞一个