ASCII İfadəsi
Köhnə məqalələrdə və texniki yazılarda rast gəlinən riyazi ifadələr bir neçə sətirdə yazı makinası ilə çap olunur. Bu ifadələrin çapı üçün sabit eni və ya monospace şrift tələb olunur, çünki simvollar (rəqəmlər, işarələr və boşluqlar) eyni genişlikdə olmalıdır. Gəlin aşağıdakı riyazi ifadəni nəzərdən keçirək.
Bu ifadə dörd sətirdə çap olunur: 4 2(1 - —-) * - 5 + 6 2 3 burada "- 5" unar minusdan sonra 5 gəlir. Biz belə sətir ifadələrini "ASCII ifadəsi" adlandırırıq.
Köhnə məqalələrdən optik simvol tanıma (OCR) vasitəsilə əldə edilən ASCII ifadələrini qiymətləndirmək istəyənlərə kömək etmək üçün sizin işiniz ASCII ifadələrinin strukturunu tanıyan və onların dəyərlərini hesablayan bir proqram yazmaqdır.
Sadəlik naminə, siz ASCII ifadələrinin aşağıdakı qaydalarla qurulduğunu qəbul edə bilərsiniz. Onun sintaksisi Cədvəl 1-də göstərilmişdir.
Məsələn, mənfi kəsr üç sətirdə təmsil olunur:
3- — 4
burada ən sol tire unar minus operatorunu ifadə edir. Unar minus və kəsrin üst xətti arasında bir boşluq simvolu tələb olunur.
Kəsr dörd sətirdə təmsil olunur:
3 + 4 * -2————- 2- 1 - 2
burada bölən və bölücü hüceyrələrinin enləri müvafiq olaraq 11 və 8-dir. Buna görə də kəsrin üst xəttinin tire sayı 2 + max(11, 8) = 13-dir. Bölücü ⌈(13−8)/2⌉ = 3 boşluq simvolu (tire) ilə sola və ⌊(13−8)/2⌋ = 2 sağa mərkəzləşdirilir.
(4^2)^3 ifadəsi iki sətirdə təmsil olunur:
2 3( 4 )
burada 2 üçün hüceyrə 4 üçün əsas xəttdən bir sətir yuxarıda yerləşdirilir və 3 üçün hüceyrə əsas (4^2) üçün əsas xəttdən bir sətir yuxarıda yerləşdirilir.
Giriş verilənləri
Giriş bir neçə datasetdən ibarətdir, ardınca sıfır olan bir sətir gəlir. Hər bir dataset aşağıdakı formatdadır.
nstr1str2...strn
n müsbət tam ədəddir və ASCII ifadəsinin hüceyrəsini təmsil edən eyni uzunluqda olan sətirlərin sayını göstərir. str_k hər bir boşluq simvolunun nöqtə ilə əvəz olunduğu hüceyrənin k-cı sətridir.
Siz n ≤ 20 və sətirlərin uzunluğunun 80-dən çox olmadığını qəbul edə bilərsiniz.
Çıxış verilənləri
Hər bir dataset üçün 2011-dən kiçik olan qeyri-mənfi tam ədəd olan bir sətir çıxış edilməlidir. Bu tam ədəd ASCII ifadəsinin modulyar arifmetikada 2011 modulu altında dəyərini göstərir. Çıxışda başqa simvollar olmamalıdır.
Böləni sıfıra və ya 2011-ə bölünən bir kəsr yoxdur.
Qeyd edək ki, x^0 ifadəsi 1 kimi təyin olunur və x^y (y müsbət tam ədəddir) ifadəsi x×x×...×x məhsulu kimi təyin olunur, burada x-lərin sayı y-ə bərabərdir.
Kəsr x və y-nin tərsinin vurulması kimi hesablanır, yəni x× inv(y), y modulu 2011 altında. y-nin tərsi (1 ≤ y < 2011) z (1 ≤ z < 2011) tam ədədi kimi unikal olaraq təyin olunur ki, z × y ≡ 1 (mod 2011) təmin edir, çünki 2011 sadə ədəddir.