Analisa nomor 1
𝑘
𝑘−𝐸+𝑘+𝐸+ +𝑘⋅𝐸 =𝑋
𝐸
𝑘
2𝑘 + +𝑘⋅𝐸 = 𝑋
𝐸
1
𝑘 ⋅ (2 + + 𝐸) = 𝑋
𝐸
𝑘 ⋅ (𝐸 2 + 2𝐸 + 1) = 𝐸 ⋅ 𝑋
𝑘 ⋅ (𝐸 + 1)2 = 𝐸 ⋅ 𝑋
𝑘 ⋅ (𝐸 + 1)2
𝑋=
𝐸
Kemudian setelah kita menemukan persamaan seperti ini, kita akan merumuskan kemungkinan untuk
masing masing nilai E yang memenuhi :
𝑘⋅4
Untuk 𝐸 = 1, 𝑋 = = 4𝑘. Artinya, salah satu bentuk X yang memenuhi adalah kelipatan 4 kecuali
1
angka 4 itu sendiri. Angka 4 tidak memenuhi karena jika kita masukkan nilai 𝑘 = 1, 𝐸 = 1, nilai A yang
terbentuk akan menjadi 0 dan hal itu tidak kita inginkan.
𝑘⋅32 9𝑘
Untuk 𝐸 = 2, 𝑋 = = . Artinya, salah satu bentuk X yang memenuhi adalah kelipatan 9 kecuali
2 2
angka 9 itu sendiri juga. Angka 9 tidak memenuhi karena jika kita masukkan nilai 𝑘 = 2, 𝐸 = 2, nilai A
yang terbentuk akan menjadi 0 dan hal itu tidak kita inginkan.
Jika kita analisa, kita hanya perlu cek apakah bilangan tersebut jika di modulo dengan bilangan kuadrat
yang lebih besar dari 1 dan bilangan tersebut bukan merupakan bilangan kuadrat itu sendiri.
Pola keteraturannya : Jika bilangan tersebut di modulo dengan bilangan kuadrat yang lebih besar dari 1
hasilnya 0 dan bilangan tersebut bukan merupakan bilangan kuadrat, maka bilangan tersebut adalah
bilangan kiyowo.
Analisa nomor 2
Kita bisa memanfaatkan most significant bit (msb) dari bilangan bilangan yang ada di soal. Note : msb
adalah bit terujung, terbesar yang nyala dari suatu angka.
Kita akan buat sebuah array of vector yang mencatat index bilangan berapa sajakah yang msb nya
bernilai index dari array tersebut. Setelah kita mempunyai data yang berharga ini, kita akan merge pulau
pulau yang saling berhubungan. Ingat bahwa, diantara 2 pulau, pasti ada salah satu dari mereka yang
lebih besar sama dengan yang lainnya. Nah, kita bisa manfaatkan fakta ini untuk mempermudah
pengecekan.
Kita tidak perlu cek apakah msb bilangan yang besar tidak sama dengan bit tersebut di bilangan yang
lebih kecil. Karena, akan lebih efisien jika kita hanya perlu cek msb bilangan yang lebih kecil apakah
sama atau tidak sama dengan bilangan yang lebih besar saja.
𝐴𝐵 ⋅ 𝑝 2 − 𝐴𝐵2 ⋅ 𝑝 − 𝐴𝐵 ⋅ 𝑞 2 + 𝑝3 𝐴𝐵 ⋅ 𝑝 2 − 𝐴𝐵2 ⋅ 𝑝 − 𝐴𝐵 ⋅ 𝑞 2 + 𝑝3
𝐵𝐷 = √ →𝑝=√
𝑝 − 𝐴𝐵 𝑝 − 𝐴𝐵
Nanti akarnya pindah samping dan pernya juga, 𝑝 2 ⋅ (𝑝 − 𝐴𝐵) = 𝐴𝐵 ⋅ 𝑝 2 − 𝐴𝐵2 ⋅ 𝑝 − 𝐴𝐵 ⋅ 𝑞 2 + 𝑝 3. Oke
pelan pelan kita jabarkan yang sisi kiri. 𝑝 3 − 𝑝 2 ⋅ 𝐴𝐵 = 𝐴𝐵 ⋅ 𝑝 2 − 𝐴𝐵2 ⋅ 𝑝 − 𝐴𝐵 ⋅ 𝑞 2 + 𝑝3. Kemudian,
kita akan jadikan agar semuanya jadi positif semua. 2 ⋅ 𝐴𝐵 ⋅ 𝑝 2 = 𝐴𝐵2 ⋅ 𝑝 + 𝐴𝐵 ⋅ 𝑞 2. Kemudian AB nya
2𝑝2 −𝑞2
dicoret semua. 2𝑝 2 = 𝐴𝐵 ⋅ 𝑝 + 𝑞 2 → 𝐴𝐵 = .
𝑝
2
2𝑝 2 − 𝑞 2 (2𝑝 2 − 𝑞 2 )2 𝑝 2 𝑞 2
𝐴𝐵 ⋅ 𝑝2 − 𝐴𝐵2⋅ 𝑝 − 𝐴𝐵 ⋅ 𝑝2 + 𝑝𝑞 2 −( ) ⋅ 𝑝 + 𝑝 ⋅ 𝑞2 − +
𝑝 𝑝 𝑝
𝑎𝑛𝑠 = √ =√ 2 2 = √ 2 2 2
𝑝 − 𝐴𝐵 2𝑝 − 𝑞 𝑝 2𝑝 − 𝑞
𝑝− −
𝑝 𝑝 𝑝
−(4𝑝 2 − 𝑞 2 )(𝑝2 − 𝑞 2 )
=√ = √𝟒𝒑𝟐 − 𝒒𝟐
−(𝑝 2 − 𝑞 2 )