Menu
Coddy logo textTech

Practice #2

Coddy'nin Hash Tabloları - Veri Yapıları Serisi #4 kursunda ders 11 / 14.

challenge icon

Görev

Kolay

Bir tam sayı dizisi arr ve bir tam sayı target alan ve değerleri toplamı target olan iki elemanın indekslerini döndüren bir twoSum fonksiyonu yazın.

İndeksleri artan sırada döndürün: [smaller_index, larger_index]. Her girdinin tam olarak bir geçerli çifti vardır.

hashmap.<ext> dosyasında sağlanan HashMap sınıfını kullanmalısınız — set, dict veya map gibi dile özgü yerleşik yapıları kullanmayın.

Kendin dene

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "solution.h"

int main() {
    char line[8192];
    char tline[64];
    if (!fgets(line, sizeof(line), stdin)) line[0] = '\0';
    if (!fgets(tline, sizeof(tline), stdin)) tline[0] = '\0';
    int arr[4096];
    int n = 0;
    char* tok = strtok(line, " \t\r\n");
    while (tok) { arr[n++] = atoi(tok); tok = strtok(NULL, " \t\r\n"); }
    int target = atoi(tline);
    int rs = 0;
    int* r = twoSum(arr, n, target, &rs);
    printf("%d %d\n", r[0], r[1]);
    return 0;
}

Hash Tabloları - Veri Yapıları Serisi #4 bölümündeki tüm dersler