Soru

Zorluk: ZorRutin Olmayan Problemler

Bir lojistik firmasının kullandığı akıllı dağıtım sisteminde, paketler üzerindeki barkod numarasının (nn) 5 ile bölümünden kalan değere (kk) göre A, B ve C bantlarına yönlendirilmektedir. Sistemin işleyiş kuralları şöyledir:

1. kk değeri tek sayı ise paket A bandına geçer ve bu bandın yükü kk birim artar.
2. kk değeri 0'dan farklı çift sayı ise paket B bandına geçer ve bu bandın yükü kk birim artar.
3. kk değeri 0 ise paket C bandına geçer ve bu bandın yükü 4 birim artar.
4. Herhangi bir paket eklendikten sonra B bandının yükü 10 birimi aşarsa, sistem otomatik olarak B bandındaki yükün 5 birimini siler ve C bandına 5 birim yük olarak aktarır.

Başlangıçta tüm bantların yükü sıfırdır. Sisteme sırasıyla barkod numaraları 24, 35, 14, 34, 24, 40 olan paketler giriş yapmıştır.

Buna göre, tüm paketler işlendikten sonra C bandındaki toplam yük kaç birim olur?

  1. A
    8
  2. B
    13
  3. C
    15
  4. 18Cevap
  5. E
    21

Cevap

C bandının son yükü 18 birimdir
Doğru cevap, tüm paketlerin sırasıyla işlenmesi ve her adımda limit kontrolünün yapılmasıyla bulunur. Özellikle B bandındaki yükün iki kez 10 sınırını aşması (12 ve 11 değerlerinde) ve her seferinde C bandına 5 birim eklenmesi kritik noktadır. Toplamda C bandı: 4 (doğrudan) + 5 (1. aktarım) + 5 (2. aktarım) + 4 (doğrudan) = 18 birim yüke ulaşır.

Adım Adım Çözüm

1
1. Paket (24) için işlem yapılır.
24 mod 5 = 4 (Çift, sıfırdan farklı). B bandına gider. B = 4.
k=4 olduğu için 2. kural uygulanır.
2
2. Paket (35) için işlem yapılır.
35 mod 5 = 0. C bandına gider. C = 0 + 4 = 4.
k=0 olduğu için 3. kural uygulanır.
3
3. Paket (14) için işlem yapılır.
14 mod 5 = 4. B bandına gider. B = 4 + 4 = 8.
B bandı henüz 10'u aşmadı (8 < 10).
4
4. Paket (34) için işlem yapılır ve kontrol sağlanır.
34 mod 5 = 4. B = 8 + 4 = 12. Limit aşıldı! (12 > 10). Aktarım yapılır: B = 12 - 5 = 7; C = 4 + 5 = 9.
B bandı 10'u aştığı için 4. kural devreye girer (1. Aktarım).
5
5. Paket (24) için işlem yapılır ve kontrol sağlanır.
24 mod 5 = 4. B = 7 + 4 = 11. Limit tekrar aşıldı! (11 > 10). Aktarım yapılır: B = 11 - 5 = 6; C = 9 + 5 = 14.
B bandı tekrar 10'u aştığı için 4. kural ikinci kez devreye girer (2. Aktarım).
6
6. Paket (40) için işlem yapılır.
40 mod 5 = 0. C bandına gider. C = 14 + 4 = 18.
k=0 olduğu için 3. kural uygulanır.

Anahtar Kavram

Bu problem, koşullu algoritmaların adım adım takip edilmesini ve durum güncellemelerinin (state update) bir sonraki adımı nasıl etkilediğinin analiz edilmesini gerektirir.

İpuçları

1
Paketleri sırasıyla sisteme dahil edin ve her eklemeden sonra B bandının yükünü kontrol edin.
2
B bandı 12 olduğunda kural gereği 5 azalır, yani 7'ye düşer. Sonraki ekleme bu yeni değer (7) üzerinden yapılmalıdır.
Tahmini Süre:2m 30s
Bu soruyu puanla