Menu
Coddy logo textTech

Özet - Benzersiz Sayılar

Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası — ders 40 / 56.

challenge icon

Görev

Kolay

Bir dizi tam sayıyı okuyan ve kopyaları otomatik olarak filtrelemek için bir std::set kullanan, ardından benzersiz sayıların sayısını yazdıran bir program oluşturun. Bu, setlerin (kümelerin) temel avantajını gösterir - manuel kopya kontrolü yapmadan benzersiz öğelerden oluşan koleksiyonları sürdürmek.

Aşağıdaki girdiler sağlanacaktır:

  • Kaç adet sayının girileceğini temsil eden bir tam sayı n
  • Ardından işlenecek n adet tam sayı

Programınız şunları yapmalıdır:

  1. Boş bir std::set<int> oluşturun
  2. Girilecek tam sayıların sayısını okuyun
  3. Her bir tam sayıyı okumak ve .insert() metodunu kullanarak sete eklemek için bir döngü kullanın
  4. Tüm sayıları işledikten sonra, benzersiz sayıların sayısını almak için .size() metodunu kullanın
  5. Kaç tane benzersiz sayı bulunduğunu gösteren sonucu yazdırın

Aşağıdaki tam çıktı formatını kullanın:

Unique numbers: [count]

Set, kopya kaldırma işlemini otomatik olarak halledecektir - zaten var olan bir sayıyı eklemeye çalıştığınızda, set kopya ekleme işlemini görmezden gelir. Bu, kopyaları manuel olarak kontrol etmenize gerek olmadığı anlamına gelir; sadece tüm sayıları ekleyin ve setin sizin için benzersizliği korumasına izin verin. Setin son boyutu, girdide tam olarak kaç tane farklı sayı olduğunu temsil eder.

Kendin dene

#include <iostream>
#include <set>
using namespace std;

int main() {
    // Tam sayıların sayısını oku
    int n;
    cin >> n;
    
    // Benzersiz tam sayıları saklamak için boş bir küme oluştur
    set<int> uniqueNumbers;
    
    // TODO: Kodunuzu buraya yazın
    // n adet tam sayıyı okumak ve bunları kümeye eklemek için bir döngü kullanın
    
    // Sonucu yazdır
    cout << "Unique numbers: " << uniqueNumbers.size() << endl;
    
    return 0;
}

Mantık & Akış bölümündeki tüm dersler