Compare the Triplets
Problem
Alice dan Bob masing-masing mendapat rating dalam tiga kategori: clarity, originality, difficulty. Bandingkan setiap kategori:
a[i] > b[i]→ Alice +1a[i] < b[i]→ Bob +1a[i] == b[i]→ tidak ada poin
Input
Baris 1: 3 integer → rating Alice (
a)Baris 2: 3 integer → rating Bob (
b)
Output
Array
[Alice_score, Bob_score]
Contoh
Input:
5 6 7
3 6 10
Output:
1 1Intuisi
Bandingkan elemen per indeks (0, 1, 2).
Gunakan dua akumulator: alice dan bob.
Tambah poin sesuai aturan perbandingan.
Contoh Langkah-demi-Langkah
a = [5, 6, 7], b = [3, 6, 10]
i=0: 5 > 3 → Alice +1 → [1, 0]
i=1: 6 == 6 → tidak ada poin → [1, 0]
i=2: 7 < 10 → Bob +1 → [1, 1]Algoritma
alice = 0, bob = 0
untuk i dari 0 sampai 2:
jika a[i] > b[i]: alice++
jika a[i] < b[i]: bob++
kembalikan [alice, bob]Waktu:
O(1)(selalu 3 iterasi)Ruang:
O(1)
Implementasi
public static List<Integer> compareTriplets(List<Integer> a, List<Integer> b) {
int alice = 0, bob = 0;
for (int i = 0; i < 3; i++) {
if (a.get(i) > b.get(i)) alice++;
else if (a.get(i) < b.get(i)) bob++;
}
return Arrays.asList(alice, bob);
}func compareTriplets(a []int, b []int) []int {
alice, bob := 0, 0
for i := 0; i < 3; i++ {
if a[i] > b[i] {
alice++
} else if a[i] < b[i] {
bob++
}
}
return []int{alice, bob}
}Ringkasan
Bahasa
Kode Inti
Kompleksitas
Java
if (a.get(i) > b.get(i)) alice++; else if (...) bob++;
O(1)
Go
if a[i] > b[i] { alice++ } else if a[i] < b[i] { bob++ }
O(1)
Last updated