zoukankan      html  css  js  c++  java
  • B2098 题解

    本题要求我们将序列去重,所以我们可以用一个数组记录此时输入的那个数之前有没有出现过。

    如果没有出现过,那么将其输出,并将数组中以这个数为下标的值计为 (1)(假设刚开始所有值为 (0)),表示这个数已经出现过,否则就不进行操作。

    由于 (10 leq a_i leq 100),所以并不用开 map 数组,直接开一个大小为 (105) 的布尔数组即可。

    AC 代码(含注释):

    #include <iostream>
    using namespace std;
    int a, n;
    bool vis[105];  //记录输入的数是否在之前出现过
    int main() {
    	cin >> n;
    	for(int i = 1; i <= n; i ++) {
    		cin >> a;
    		if(!vis[a]) cout << a << ' ', vis[a] = 1;  //如果没出现过,就将其输出,并标记这个数已经出现过。
    	}
    	return 0;
    }
    
  • 相关阅读:
    UVA
    [CQOI2018] 社交网络
    UVA
    51nod 1314 定位系统
    51nod 1211 数独
    51nod 1392 装盒子
    51nod1253 Kundu and Tree
    51nod1313 完美串
    51nod1039 x^3 mod p
    51nod1369 无穷印章
  • 原文地址:https://www.cnblogs.com/crp-cpp/p/14968981.html
Copyright © 2011-2022 走看看