|
Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti samarqand filiali
|
bet | 6/6 | Sana | 17.05.2023 | Hajmi | 394.27 Kb. | | #61083 |
Bog'liq 4-amaliy Abduqahorov R. Taqsimlangan 4aouLxYxNuuVApyO5uymXDuR5l4wDvxrGkrCXPHB, 1, 6-modul. Buralish deformatsiyasi, article for Sukhrob, 1-amaliy ish Risklarni baholash usullari Ishdan maqsad, MSM, rivojlanishi, 1-topshiriq 511-512-531-532-533, 28-03 03-16, 5 20 guruh talabasi Toshpolotov shahzod optoelektronika fanidan (1), 41uHnjgpJSayA50P8nEHxTVvPwPTV8x8QTy4OkzW, genomika REFARAT, ingliz tili 2, 9
Problem: Siz tangalarning eng kam sonini ishlatib, miqdorni o'zgartirishingiz kerak.
Amount: $18
Available coins are
$5 coin
$2 coin
$1 coin
Siz foydalanishingiz mumkin bo'lgan har bir tanga sonida cheklov yo'q.
Yechim:
Bo'sh joy yarating solution-set = { }. Mavjud tangalar mavjud {5, 2, 1}.
ni topishimiz kerak sum = 18. dan boshlaylik sum = 0.
Har doim eng katta qiymatga ega (ya'ni 5) tangani tanlang sum > 18. (Har bir qadamda eng katta qiymatni tanlaganimizda, manzilga tezroq erishishga umid qilamiz. Bu kontseptsiya ochko'z tanlov mulki deb ataladi .)
Birinchi iteratsiyada solution-set = {5}va sum = 5.
Ikkinchi iteratsiyada solution-set = {5, 5}va sum = 10.
Uchinchi iteratsiyada solution-set = {5, 5, 5}va sum = 15.
To'rtinchi iteratsiyada solution-set = {5, 5, 5, 2}va sum = 17. (Biz bu erda 5 ni tanlay olmaymiz, chunki agar shunday qilsak, sum = 20bu 18 dan katta bo'ladi. Shunday qilib, biz 2-chi eng katta elementni tanlaymiz.)
Xuddi shunday, beshinchi iteratsiyada 1. Hozir sum = 18va ni tanlang solution-set = {5, 5, 5, 2, 1}.
Amaliy topshiriqlar.
Musbat butun son berilgan nbo'lsa, barcha n-raqamli ikkilik sonlarni ketma-ket 1lar yo’q bo’lgan sonlarni hisoblang.
Masalan, uchun n = 5berilgan cheklovlarni qanoatlantiruvchi ikkilik sonlar: [00000, 00001, 00010, 00100, 00101, 01000, 01001, 01010, 10000, 10001, 10010, 10100, 10101].
Dastur kodi:
def rustam(m):
l = []
for i in m:
if len(i)==5:
l.append(i)
n = []
for i in l:
if not '11' in i:
n.append(i)
return n
massiv = ["00000", "00001", "00010", "00100", "00101", "01000", "01001", "01010", "10000", "10001", "10010", "10100", "10101", "10101", "11101", "0101", "101", "1101"]
print(massiv)
print(rustam(massiv))
Dastur natijasi:
Xulosa
Amaliy topshiriq bajarildi.
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti samarqand filiali
|