#3799. 练2-魔法数据清洗2
练2-魔法数据清洗2
清晨,阳光洒进了兔猫信奥学院的编程教室,今天是**“魔法数据清洗”实训课**。🐇小兔和🐱小猫坐在教室里,望着黑板上加菲老师写下的一行数字陷入了思考。
📜 加菲老师慢悠悠地说:
“孩子们,这是一串用来召唤魔法的编号列表,但它们最近被重复施法的波动扰乱了。
你们的任务是:保留每个数字最多出现两次,多余的都要清除掉——否则会触发魔法混乱!
不许新建列表!你们要在原来的列表上完成这个魔法清理,额外的魔力空间只能是常数级别哟!”
🐇小兔翻了翻列表,发现这些数字已经是按非降序排列的,思索道:“只要我从头扫过去,控制每个数字最多保留两次,不就可以了吗?”
🐱小猫点头道:“是的,像数星星一样标记前两颗,后面的直接无视掉!”
加菲老师满意地笑了笑:“那就开始吧,把你们清理后的魔法列表告诉我吧~”
输入格式
- 第一行一个整数 $$n$$,表示数组的长度。
- 第二行包含 $$n$$ 个按非降序排列的整数,表示原始魔法编号列表 。
输出格式
- 第一行输出一个整数 $$k$$,表示清理后列表的有效长度。
- 第二行输出清理后的数组前 $$k$$ 个元素,元素之间以空格分隔。
输入样例 1
6
1 1 1 2 2 3
输出样例 1
5
1 1 2 2 3
输入样例 2
9
0 0 1 1 1 1 2 3 3
输出样例 2
7
0 0 1 1 2 3 3
数据范围
- 对于所有数据,满足:
最终,小兔和小猫默契地配合完成了清理任务。
只留下最精炼的魔法编号——每个只出现一次或两次,整洁又安全。
加菲老师为他们准备了香喷喷的鱼干和胡萝卜蛋糕:“干得漂亮,未来的编程大师!”
现在,这个任务也交给你啦——
看看你能否也像他们一样,写出精巧的算法魔法呢?🐇🐱✨