鱼C论坛

 找回密码
 立即注册
查看: 1104|回复: 2

找出不同的个数

[复制链接]
发表于 2023-10-24 22:32:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <bits/stdc++.h>
using namespace std;
const int N =1010;
int a[N],b[N];
int main()
{
    int n,cnt=0;
    cin>>n;
    memset(b,0,sizeof(b));
    for(int i=0;i<n;i++)cin>>a[i];
    for(int j=0;j<n;j++)
    {
        b[a[j]]++;
    }
    for(int j=0;j<n;j++)
    {
        if(b[a[j]]==0)cnt++;
    }
     cout<<cnt<<endl;
}
修改代码,为什么cnt=0呢
输入
5
1 1 2 4 5
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-24 22:33:07 | 显示全部楼层
在给定的代码中,cnt被用作计数器,用于记录出现次数为0的不同元素的个数。初始时将cnt设置为0是因为我们还没有遍历数组a,因此还没有找到任何出现次数为0的元素。

在代码中,首先通过cin读取整数n,表示数组a的长度。然后使用memset将数组b的所有元素初始化为0。

接下来,使用for循环遍历数组a,并使用b[a[j]]++语句将数组b中对应元素的计数器加1。这样,数组b中的每个元素都表示了对应的数字在数组a中出现的次数。

然后,再次使用for循环遍历数组a,并通过判断b[a[j]]是否为0来确定是否为不同的元素。如果b[a[j]]为0,说明该元素在数组a中出现的次数为0,即为不同的元素,将cnt加1。

最后,输出cnt的值,即出现次数为0的不同元素的个数。

对于给定的输入5 1 1 2 4 5,程序的执行过程如下:
· 首先读取整数n,得到n=5。
· 然后将数组b的所有元素初始化为0。
· 接下来,使用for循环遍历数组a,将数组b中对应元素的计数器加1。此时,数组b的元素分别为0 2 1 0 1,表示数字1出现了2次,数字2出现了1次,数字3没有出现,数字4出现了1次,数字5出现了1次。
· 再次使用for循环遍历数组a,判断b[a[j]]是否为0。对于给定的输入,数组a的元素分别为1 1 2 4 5。第一个元素1在数组b中的计数器为2,不为0,因此不是不同的元素。第二个元素1在数组b中的计数器也为2,不为0,同样不是不同的元素。第三个元素2在数组b中的计数器为1,不为0,也不是不同的元素。第四个元素4在数组b中的计数器为1,不为0,同样不是不同的元素。最后一个元素5在数组b中的计数器为1,不为0,同样不是不同的元素。
· 最后,输出cnt的值为0,表示没有出现次数为0的不同元素。

因此,对于给定的输入,程序输出的结果是0。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-24 22:33:08 | 显示全部楼层
The variable cnt is initialized to 0 (cnt = 0) at the beginning of the code because it is used to count the number of distinct elements. By setting it to 0 initially, we ensure that it starts counting from zero before iterating through the array.

Regarding the input you provided (5 1 1 2 4 5), there seems to be an error as the first number "5" does not represent the number of elements in the array. It appears to be part of the array itself. If you provide the correct input format, I can assist you with modifying the code accordingly.
请注意,本回答来自GPT-4
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 19:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表