Asosiy mazmunga o'tish

Algorithms — haftalik masala jangi

Haftalik jang — bu modulning eng samarali qismi. Sabab oddiy: olimpiadaga tayyorlanishning yagona ishlaydigan usuli — musobaqa sharoitida masala yechish, va u haftada bir marta takrorlanishi kerak.

Format 40 daqiqaga sig’adi va uni to’garak vaqtida ham, dars oxirida ham o’tkazish mumkin.

Vaqt Nima bo’ladi
0–2 Masalalar tarqatiladi. Uchta masala: oson, o’rta, qiyin
2–32 Yechish. Yakka tartibda, internetda yechim qidirish yo’q
32–36 Sindirish raundi — pastda batafsil
36–40 Reyting e’lon qilinadi va uy vazifasi beriladi: upsolving

Har hafta uchta masala, va ularning darajasi qat’iy:

Birinchi masala — o’tgan hafta o’tilgan darsdan. Uni sinfning kamida yarmi yechishi kerak. Agar hech kim yechmasa, o’sha dars o’zlashtirilmagan — bu jangning eng qimmatli signali.

Ikkinchi masala — oldingi darajadan, takrorlash uchun. Bu «o’rgangan, lekin tanimadim» muammosini ochib beradi.

Uchinchi masala — hali o’tilmagan usuldan. Uni hech kim yechmasligi normal. Maqsad boshqa: to’liq izlash yozib qisman ball olishga o’rgatish.

Masalalar manbai: CSES to’plami har darsning <Masalalar> blokidan, yoki Codeforces Div. 3 arxividan.

Ball IOI uslubida, ya’ni qisman ball bor. Bu eng muhim pedagogik tanlov: u to’liq izlash yozishni rag’batlantiradi.

Nima Ball
To’liq yechim (barcha testda o’tadi) 100
To’liq izlash ishlaydi, kichik testlarda to’g’ri 40
Kod ishga tushadi, lekin javob noto’g’ri 0
Yechim yo’q, lekin usul to’g’ri yozilgan (og’zaki) 20

Oxirgi qator ataylab qo’shilgan: 38-darsdagi ko’nikma — kod yozmasdan usulni aytish — alohida qadrlanadi.

Bu formatning eng yoqadigan qismi va u 15-darsdagi ko’nikmani mustahkamlaydi.

Yechish vaqti tugagach, o’quvchilar yechimlarini juftlikda almashadi. Endi vazifa — sinfdoshning yechimini buzadigan kirish topish.

Qoidalar qisqa: kodni o’qishga urinmaslik, faqat chekkalarni sinash (n = 1, bo’sh kirish, hamma sonlar bir xil, hamma sonlar manfiy, maksimal chegara). Sindirgan test topilsa — sindirgan o’quvchiga 20 ball.

Bu ball tizimi ikkita narsani beradi. Birinchisi: o’quvchilar o’z yechimlarini oldindan tekshira boshlaydi. Ikkinchisi: sindirilgan test to’plami sinf uchun qimmatli material bo’lib qoladi — uni saqlab qo’ying.

Jangdan keyingi uy vazifasi har doim bir xil va u muhokama qilinmaydi: yechilmagan masalalarni yechish.

O’quvchi har masala uchun daftariga to’rtta qatorni yozadi:

  1. Natija — yechildimi, qanday xato bilan, qancha vaqt ketdi
  2. Sabab — g’oya topilmadi / chegara o’qilmadi / kod xato / vaqt yetmadi
  3. Usul — to’g’ri usul qaysi edi va qaysi darsda o’rgangan
  4. Keyingi qadam — bitta aniq ish

Keyingi jangdan oldin ikki daqiqa shu daftarlarni ko’rib chiqing. «Sabab» qatorida bir xil javob takrorlanaversa — sinfning umumiy bo’shligi topilgan bo’ladi.

Bu jadval bir darajaga (8 dars) mos keladi va uni har darajada takrorlash mumkin.

Hafta 1-masala (yangi) 2-masala (takror) 3-masala (kelajak)
1 shu haftaning darsidan keyingi darajadan
2 shu haftaning darsidan 1-haftadan keyingi darajadan
3 shu haftaning darsidan oldingi darajadan keyingi darajadan
4 shu haftaning darsidan 2-haftadan keyingi darajadan
5 shu haftaning darsidan oldingi darajadan keyingi darajadan
6 shu haftaning darsidan 3-haftadan keyingi darajadan
7 shu haftaning darsidan oldingi darajadan keyingi darajadan
8 daraja testi

Sakkizinchi haftada jang o’rniga daraja testi o’tkaziladi va natijalar oldingi jangdagi reytinglar bilan solishtiriladi. Ikki o’lchov mos kelmasa — test savollari yoki jang masalalari qayta ko’rilishi kerak.

Tajribada bir necha variant sinalgan va ular ishlamaydi. Ularni takrorlamaslik uchun yozib qo’yamiz.

Jamoa bo’lib yechish — kuchli o’quvchi hammasini yechadi, qolganlar kuzatadi. Jamoa formati faqat 39-darsdan keyin, ICPC uslubidagi alohida mashq sifatida ma’nosi bor.

Uyda yechish — internetda yechim topiladi va mashqning ma’nosi yo’qoladi. Jang sinfda, kuzatuv ostida bo’lishi kerak.

Faqat qiyin masalalar — sinfning yarmi nol ball oladi va ikki haftadan keyin qatnashishni to’xtatadi. Birinchi masala albatta yechiladigan bo’lishi kerak.

Ball qo’yish — yuqorida yozilgan sabab bo’yicha.