冒泡,10分

P1059 [NOIP2006 普及组] 明明的随机数

用桶排序试一试
by czx6666 @ 2024-01-13 12:36:39


用unique试一试unique(a,a+n)
by EgoStrip @ 2024-01-13 12:46:50


@[Wardin](/user/1214348) 您好: 在去重的过程中,此代码: ```c++ for (int i = 1; i <= n; i ++) { if (b[a[i]] > 1) { b[a[i]] = 1; n1 --; } } ``` 错误,因为将 $a[i]$ 去重时,$a[i]$ 有可能不仅仅重复了一次,如: ```c++ 5 1 1 1 1 1 ``` 此组样例, $1$ 不仅仅重复了 $1$ 次。 所以要将 $n1$ 减掉重复的个数 $b[a[i]]-1$ 而并非 $1$。 修改后代码如下: ```c++ for (int i = 1; i <= n; i ++) { if (b[a[i]] > 1) { n1 = n1 - b[a[i]] + 1; b[a[i]] = 1; } } ``` 修改后即可通过,希望能为您提供帮助!
by zengziqvan @ 2024-01-13 13:01:44


@[zengziqvan](/user/935908) 谢谢,已过。
by Wardin @ 2024-01-14 19:11:37


|