[Mảng 1 Chiều Cơ Bản]. Bài 8. Liệt kê các giá trị khác nhau

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Nguồn bài:
28Tech
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho mảng số nguyên A[] gồm N phần tử, hãy liệt kê các giá trị khác nhau trong mảng theo thứ tự xuất hiện, mỗi giá trị chỉ liệt kê 1 lần. Ở thời điểm hiện tại các bạn có thể duyệt trâu để giải bài này, sau này sẽ dùng cách tối ưu hơn.

Gợi ý :

Đối với mỗi chỉ số i trong mảng, dùng 1 vòng for con duyệt từ 0 tới i - 1 để kiểm tra xem có phần nào đứng trước i giống A[i] hay không, nếu không có thì in ra A[i]


Đầu vào

Dòng đầu tiên là số nguyên dương N

Dòng thứ 2 gồm N số nguyên viết cách nhau một vài khoảng trắng


Giới hạn

1<=N<=1000

-10^3<=A[i]<=10^3


Đầu ra

In ra các giá trị khác nhau theo thứ tự xuất hiện, mỗi giá trị chỉ liệt kê 1 lần.


Ví dụ :

Input 01
9 
1 2 3 4 1 2 3 4 5
Output 01
1 2 3 4 5
Input 02
9 
1 1 1 1 1 1 1 1 1
Output 02
1

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    Dungx_2008  đã bình luận lúc 25, Tháng 11, 2024, 15:03

    include <bits/stdc++.h>

    using namespace std; int a[100000]; int main() { int n; cin >> n; for(int x,i=1;i<=n;i++) { cin >> x; if(a[x] == 0) cout << x << " "; a[x] = 1; } return 0; }


  • 0
    khangsigma  đã bình luận lúc 10, Tháng 10, 2024, 10:51

    include <iostream>

    define N 10005

    using namespace std; int a[N]; int main() { int n;cin>>n; for (int i=1; i<=n; i++)cin>>a[i]; for (int i=1;i<=n;i++) {int kt = true; for (int j=1;j<i;j++) if (a[i]==a[j]) {kt = false; break;}

    if (kt) cout<<a[i]<<" ";} return 0; }


  • 1
    _nambuidinh_  đã bình luận lúc 26, Tháng 8, 2024, 15:02

    include<bits/stdc++.h>

    using namespace std; int main(){ int n; cin >> n; int a[n]; for(int i = 0; i < n; i++){ cin >> a[i]; } set<int> se; for(int i = 0; i < n; i++){ se.insert(a[i]); } //cout << se.size() << endl; for(auto x : se){ cout << x << " "; } }

    code như này có được kh mn?


  • -1
    tuyen_pham  đã bình luận lúc 19, Tháng 8, 2024, 14:49

    include <bits/stdc++.h>

    using namespace std; int a[1000000],b[1000000]; int main() { int n; cin>>n; for(int i=0;i<n;i++){ cin>>a[i]; } for(int i=0;i<n;i++){ if(b[a[i]]==0){ cout<<a[i]<<" "; b[a[i]]++; } } return 0; }


  • -3
    pham_van_hung_CUS305467182  đã bình luận lúc 13, Tháng 8, 2024, 9:42

    from collections import Counter n=int(input()) for i in Counter(list(map(int,input().split()))): print(i,end=' ')


  • -9
    Lamlilac1234  đã bình luận lúc 5, Tháng 8, 2024, 12:29

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


  • -8
    theguy777_jaboi  đã bình luận lúc 31, Tháng 7, 2024, 1:50

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


  • 0
    trieu_xuan_huy_DSA  đã bình luận lúc 4, Tháng 6, 2024, 14:03

    //package javaapp;

    import java.util.Scanner;

    public class NewClass {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n];
        int[] duong = new int[1005];
        int[] am = new int[1005];
    
        for(int i = 0; i < n; i++){
            a[i] = sc.nextInt();
            if(a[i] >= 0){
                duong[a[i]] = 1;
            }
            else am[a[i]] = 1;
        }
    
        for(int i = 0; i < n; i++){
            if(am[a[i]] == 1){
                System.out.print(a[i] + " ");
                am[a[i]] = 0;
            }
            else if(duong[a[i]] == 1){
                System.out.print(a[i] + " ");
                duong[a[i]] = 0;
            }
        }
    
    }
    

    }


  • -4
    Itachi  đã bình luận lúc 3, Tháng 5, 2024, 4:25

    include<bits/stdc++.h>

    using namespace std; int main(){ ios::syncwithstdio(false); cin.tie(0);cout.tie(0); int n; cin>>n; int a[n]; int f[n]; for(int i=1;i<=n;i++) { cin>>a[i]; } cout<<a[1]<<" "; for(int i=2;i<=n;i++){ bool check=true; for(int j=i-1;j>=1;j--) { if(a[i]==a[j]) {check=false; break;} } if(check==true) cout<<a[i]<<" "; } return 0; }