Yaklaşık bir yıl önce XOR primerlerini bulmanız istendi . Bunlar, taban 2'de XOR çarpımı yaparken sadece faktörleri 1 ve kendileri olan sayılardır . Şimdi işleri biraz renklendirecektik.
-2 tabanındaki XOR primerini bulacağız
Baz -2'ye Dönüştürme
Baz -2 diğer tüm bazlara çok benzer. En soldaki yer 1'lerin yeri (1 = (-2) 0 ), yanında -2'lerin yeri (-2 = (-2) 1 ), yanında 4'lük yer (4 = (-2) ) 2 ), vb. En büyük fark negatif sayıların taban -2'de herhangi bir olumsuz işaret olmadan temsil edilebilmesidir.
Aşağıda bazı örnek dönüşümler verilmiştir:
Decimal | Base -2
-----------------
6 | 11010
-7 | 1001
12 | 11100
-15 | 110001
Baz -2'de XOR ilavesi
Base -2'deki XOR ilavesi, ikili dosyadaki XOR ilavesi ile hemen hemen aynıdır. Sayıyı, her basamaktaki Temel -2 ve XOR'a dönüştürmeniz yeterlidir. (Bu, taşıma olmadan ekleme ile aynıdır)
Adım adım ele alınan bir örnek:
(Sembolü +'
Baz -2 XOR eklemesini belirtmek için kullanacağız )
Temel 10'dan başlayın:
6 +' -19
Taban -2'ye dönüştür:
11010 +' 10111
Onları taşımadan ekleyin:
11010
+' 10111
---------
01101
Sonuçlarınızı tekrar temel 10'a dönüştürün:
-3
Baz -2'de XOR çarpımı
Bir kez daha temel -2'deki XOR çarpımı, ikili dosyadaki XOR çarpımı ile hemen hemen aynıdır. Eğer taban 2'deki XOR çarpımına aşina değilseniz, burada mükemmel bir açıklama var . İlk önce buna bir göz atmanızı öneririm.
Base XOR çarpma -2 tabanında uzun çarpma gerçekleştirme -2 yerine geleneksel olan sayıların tüm ekleyerek son adımına gelince haricinde aynıdır +
kullandığınız +'
yukarıda tanımlandığı.
Aşağıda aşağıda bir örnek verilmiştir:
Ondalık olarak başlat:
8 *' 7
Base -2'ye Dönüştür:
11000 *' 11011
Uzun bölüm oluştur:
11000
*' 11011
---------
İlk sayıyı ikincideki her yerle çarpın
11000
*' 11011
------------
11000
11000
0
11000
11000
Tüm sonuçları baz -2 XOR ilavesiyle toplayın
11000
*' 11011
-------------
11000
11000
0
11000
+' 11000
-------------
101101000
Sonucu ondalığa dönüştür:
280
Meydan okuma
Zorluğunuz, taban -2'de bir sayının XOR asal olup olmadığını doğrulamaktır. Bir sayı, tabandaki sayı ile çarpılan tek tam sayı çifti 1 ve kendiyse, taban -2'deki bir XOR başlangıcıdır. (1 asal değildir)
Eğer giriş -2 falsisinde bir XOR prime ise, bir sayı alır ve bir boolean, doğruluk verirsiniz.
Çözümler, hedef olarak en düşük bayt sayısına ulaşılarak bayt olarak puanlanacaktır.
Test senaryoları
Aşağıdakiler, taban -2'deki tüm XOR primerleridir:
-395
-3
-2
3
15
83
Aşağıdakiler -2 tabanındaki XOR primerleri değildir :
-500
-4
0
1
258
280
258
eşit görünüyor-2 *' -129 = 10 *' 10000011