Tuesday, April 15, 2014

Coder-Strike 2014 - Qualification Round: B. Multi-core Processor

Олон цөмт процессор

Олон цөмт процессор нь n цөмтэй ба k үүр бүхий санах ойтой.
Цикл бүрт процессорын цөм бүр санах ойн аль нэг үүр рүү хандах эсвэл юу ч хийхгүй байх командыг биелүүлнэ.
Хэрэв нэг циклийн үед хэд хэдэн цөм нэг зэрэг санах ойн нэг үүр рүү хандвал түгжрэл үүсч, тэдгээр цөмүүд болон санах ойн үүр үүрд блоклогдоно.
Блоклогдсон цөмүүд цааш команд биелүүлэхээ болих ба блоклогдсон үүр рүү хандсан цөм өөрөө блоклогдоно.
m тактын дараа цөмүүд хэд дэх такт дээр блоклогдсон болон блоклогдоогүй байх тухай мэдээллийг ол.

Оролт

Эхний мөрөнд цөм, цикл болон санах ойн үүрийн тоо болох n, m, k тоонууд өгөгдөнө (1 ≤ n, m, k ≤ 100). Дараагийн n мөрөнд командууд өгөгдөнө. i-р мөрөнд m ширхэг бүхэл тоо x(i1), x(i2), ..., x(im) (0 ≤ x(ij) ≤ k) өгөгдөх ба x(ij) нь i-р цөм, j-р циклд хийх командыг илэрхийлнэ.  x(ij) нь тэг бол юу ч хийхгүй байх гэсэн команд байна. Хэрэв x(ij) нь 1-ээс k хүртлэх тоо байвал ийм дугаартай санах ойн үүр рүү ханд гэсэн команд байна.

Гаралт

n мөр гаргана. i-р мөрөнд i-р цөмийн блоклогдох циклийн дугаар t(i) тоог хэвлэнэ. Хэрэв цөм блоклогдохгүй үлдэх бол 0 тоог хэвлэнэ.

No comments: