From 0cb745c9a1b6e57f54e04b259d1512d73fb2fb21 Mon Sep 17 00:00:00 2001 From: Krosh Date: Sun, 4 May 2025 00:45:14 +0300 Subject: [PATCH] new tasks --- contests/5contest/3.cpp | 114 ++++++++++++++++++++++++++++++++++++++++ kr/1 | Bin 0 -> 25952 bytes kr/1.cpp | 15 +++--- 3 files changed, 122 insertions(+), 7 deletions(-) create mode 100755 kr/1 diff --git a/contests/5contest/3.cpp b/contests/5contest/3.cpp index e69de29..93fad66 100644 --- a/contests/5contest/3.cpp +++ b/contests/5contest/3.cpp @@ -0,0 +1,114 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +struct Date { + int Y; + int M; + int D; + + Date(std::string s) { + std::stringstream ss; + ss << s; + + char tmp; + ss >> Y >> tmp >> M >> tmp >> D; + } + + Date(int Y, int M, int D) : Y(Y), M(M), D(D) {} + + bool operator<(const Date d) const { + if (Y < d.Y) return true; + if (Y > d.Y) return false; + + if (M < d.M) return true; + if (M > d.M) return false; + + if (D < d.D) return true; + + return false; + } + +}; + +struct Student { + std::map scores; + std::string name; + + Student(std::string name) : name(name) {} + + Student(const Student& s) { + scores = s.scores; + name = s.name; + } + + bool operator==(const std::string n) { + return n == name; + } + + bool operator<(const Student st) const { + return name < st.name; + } +}; + +int main() { + std::set studs; + std::set dates; + + std::string name, date; + int grade; + while (std::cin >> name >> date >> grade) { + std::set::iterator iter = studs.find(name); + Date d(date); + + if (iter == studs.end()) { + Student s(name); + s.scores[d] = grade; + studs.insert(s); + } else { + Student s(*iter); + s.scores[d] = grade; + studs.erase(iter); + studs.insert(s); + } + + dates.insert(d); + } + + // std::cout << studs.size() << std::endl; + // std::cout << studs[0].name << studs[0].scores.size() << std::endl; + + // std::sort(dates.begin(), dates.end()); + // std::sort(studs.begin(), studs.end()); + + std::cout << '.' << "\t"; + for (auto& date : dates) { + std::cout << std::setfill('0') + << std::setw(4) << date.Y << '/' + << std::setw(2) << date.M << '/' + << std::setw(2) << date.D << '\t'; + } + std::cout << std::endl; + + for (auto st : studs) { + std::cout << st.name << '\t'; + + for (auto date : dates) { + if (st.scores.find(date) == st.scores.end()) { + std::cout << '.' << '\t'; + } else { + std::cout << st.scores[date] << '\t'; + } + } + + std::cout << std::endl; + } + + return 0; +} + diff --git a/kr/1 b/kr/1 new file mode 100755 index 0000000000000000000000000000000000000000..4ecf0b5db145134b118604e73542fc9a8a0b05a3 GIT binary patch literal 25952 zcmeHQeRNdSwZHk&Xpuw(rJyoebpgVdNkR-3B#;bDB;c42OD%Yv%uLACWF}5-AmM?f zD`=e+vcyU&ZD~vU>}u=l2W@#>(9+iklwhCw!h6(5)hexDlVWX*wx&v*_uJ>}bMKv- znP}Vh{&;KU=w#oszs^4U?6c3Ad+!`R<*i$ho0FrdlBeCIQElKtiK$}3o$L7mph~OM zF2G-xHd{Lf^?ZSo^ePEJmE}}!IxJ*-9w5ohpoxopM%AxTkCE0%SV zE1*lRJK;gbE2!vZdnHnj=73L~FYyZ6<;XX4mPq=X)#-4A{ZgVj!|fBAS%isck6 zW;q3wKS>RJD%qb-=rCJz%C)kb6V^Z{6$PmcDh)3ip}(g+Kg%s*_fJ99-mQ=$ zzkJZb?$qkJy=>#)j87G3*SAHQE6T5L3oU4iM7z2dbXQg^s3>=L#@waC1hUJ855?5V zHBB1K9v~dMQOn&X>q;NdrZJuPZ}{<%)|;O>dvc6Oso%}HMBhR@WH-qW4;9kK zE)jLQCOyO>{qdl#YZ_tU1sb3F@&fi{M z*G3~ojmNvuRPJ9<-wmA{EXDk|Mix@rn#uC9@ zTA9Wjj|Y16Xjt`!nuuJ*%Ee$}Qg0U_`)0?83BGHguAMWgGhuidEcR+86P-C0J zT6?&?J+_h1NF_mbe0v}gWyXLJ?v6kSQG$2r!PdLCUAt^~t?qG`*)H9SB>UR6P*UzL zO{-G4s>P==TY{1-IUMQ9%UNY_g~+?3#qqIdxvp7C%%vN z&d~~B5ZTZ(_Assrw2QcI%>68uyj<-{Hdw94Y8~9mldOc-TZLc7iM7&!zmxe3d7deL zRX=_USt)b0%FR?Cvf&(RZFt_I3EH=8c-|@s{5~6gim64@4%qMrShEb+@Dy*8Wzqwa9+>pN|2Gf3 zS#-razTVdgeSHPLUaD!ndk2i%)R3?DXyFmjmDIvgphr{JlmQgY)`-8AD5Jx_O{G#h zMV%Ic(cu$jofd%6;m6E6Ep(&9KQQaG5R49g&8*WRGdldBS*HbIbokR|ofd-8;k(T` zEdZm#0kckte{}d(vrY+rba``^}=E<9=H#M5*59;e3^(IGswWIEJ)R#Ew z3mx?Zj`}r@`sI%LbVvOHN4>ya_xzzYapDeN;&;B@mqz@JUeAE%abN$EU!vEk>2Kmj z!dorwqS@O~#Q^s&xe~Iz{(_kV7L6IxG4xM^iH82X)ajzx+lcQ7L-4;r#Quf9CouOt zUt+}f*y~GukB#N|a*p{b!qn*&;a4S3@v&{m%Vv3xa53-;?CFa-B+79y6k5ZRH!`Q zOAIEfpu^YS^gvzWmAb?q>k_}MOPui~UI2NgFLA<`c!!uiA(*7V_3|3j!Q>LO>`NSj zi(gnwSA)ri|C&nq`ljD0s!tQX4N{9jXaEWlr+j@)r$WB#rip$T)n^t{uYHLl z%C6%i0XArO6B;b4(6NP#kkns+n%qmx_8x8h#IkkE)~`RJJP79%C$^qVbdB|HJ)6_@ z(NAw3OQkS8rLg!W8b@gFBGLYWS3XMB!??Oe5RPG}4-4F2G8Zg6A2+rB8|nBtEYOk< zVYt$p^Ch;9`TD$Lr1}cD2XZ2F(14OTcKTEYod&xS4CwWUF9Gk3`V!s&U!v)_FR^;a z9tBCy02(1D4hhD=G* z&eA}7lNcizdqzR>MuA&DX1T)IBNw8Myhsk{^C8s|1V%JDorvt3cC=)3DfQfko*!^@ za?tyP2%SFf0kSVgsE4in(%vPg_h||5$wBWBjmMc#pZ8?{+8jl{T+kOCDcUu#eZcro zpLeKtASdA+Ix`y~KLoBP*n3}KMNhCIrQkVuNi?7kUnUFKnqLXOdQU?aK4g&y_^Dvo zK2UToCGkGAup6U9ZsbreNWS?Fxt82$MFyf~=lTiij>vgbMx-UL=!vco>GUQUL4(O6 zm}B#F+KBb}izRoVFEQksdmO1Q*Bm}MdUELS_0$}?R`e?^s#V1IX|^8Fh|a)>Cec8W z#_mao(fsCWlAQP0>0Dn9qBvtnQCIrqL^?stB9_c^=M88k0CM)#VYI*BlmeRpvRE@k{62(H(^Y31%DqoDk%*n5fFs$00)!vgeEz` zh_Q>C9!%z$YL*x7%rNHAG?tb>Tp~YE*Aq>!7TpySMwoX7=B1A$aU-;>)nSbC0tEZL zYWPn}*FjIym^}!i$b^>vM61HV_A$f|W^MtV==T@eTG^bXmBO@Ete8l2ofiIt^8!M2 z2CApYm-V8G<@!j`=g^n5$e=*u02kvi(x)vty!9N2j-1ISN7>@f)+5*|sJ;Zo#^LW` z)8Fa7{tab9;rhYkyXm=#y&_GaQR>|~q8XP8Zt{KKYWQ9xytkyFHA~HzQdMXhbzswL z+{qE&bqIettGna7`ZlEPJ?MR{gof8Srw<^1QJIYm0U}H$un}rGftlV9ulJi-j8xL1 z>zMFc-%6YC_5q}bMaO;uK`0bM@E2UB4FQ>jJc)UmXgYPwo63QHL<)@`wJe0@rjHx< ze4PI=h0}1(pdf|))9w}4U}|$bfBDUf_KT<)OumqAuW~wxb0EMYiw<|DB@1($h~0GY zMB^uyqoWuJOsA2ehX;y&Jb-T#NLAQh%rtc@CF;h4hK;tqBb48ZPOnP9_ z1Ct(@^uVMCCOz=J9-z1Qs00JiXv}a0@fM~LcHsrY8*khg4jQqzt1S@U5RSWy)36P$r+yO|>%ZgvdO#r~PfNca{!Tlk?R=|CL-GD=Yy8%Z4 z4+9qCvF@~2Q>k*md4P?8K|lj=H{dS7x@0PK0PqgLQ-C`F#{f?O&cO5F*8wX5ZyHXe z)&gz?>;`-ka5vynfCm8ce-C-Un*hfE8v$qFy@h7LO2BP^YXJ+-zz={+0rvnJfQJCT z0{9%@0N`1`{{*}Y?>U?WTny-bEtOgacqiZ%z{dgi0KN@)2yp%%AP-mtcowh`@G{(X zO#m(i{3hT!z^4JX0KN{m2e9FF$OCQ%d=BvIfM)^U0CeF!io8FjQdNL=1BL*50k;Ew z4)77cV}M5ip96de@Pd(4Dj(yh-f_&?T(9MH7w62Ha&F;H-1#It{f1*L;^SICt>#>D zL-=Z3mgBScHyB64Pc2?Cb;iv_AKFy7OlsN`(+*9l9`{nCQVHEou%XAWr8_77msa@d#u&v2f1YVm!!)fb#o+n={1zqcT- zBnQ?@U8lfXff$|*X!6}A$fB*W3Fy?$PNx45Fu%^$mbW)A_YtYb1=<082GEX=_&heg zPgy)6*!vQA@SxqYh4j2(*>gX51~Au(>^v(h`nN#eHv#=P=zBrW*54%4>FJ*7kAP+4 zHqal1{H-A8w=KCq|i1$hrz0R_+4)mu$Uu16s{k#h-B;N-5tDrBm z)7vZ?c7T2s^dH&j^^!wdnM_r>j7} z!Ypu0f-jGazn*kkFSyuKYgH`sZi7M=3_mq5=HC*;HZpzi}cQ!EqxBVvx=r0HT0O+N5{SixlBj~@JfNp^P9Ox0deD0k>0olI` z^lPwwW{ctdpqGK3%|9nW_kk|n7gu9=vt{2~pf8?)J`K~qWCH!=lpa9O6a!>`Bk0wj zUvKYUi`BjXdOhg$9K($9TP*r6&~FAkY^Ue0GySt4^anuq*y*j7{7KOFf}Y7f7i8W7 z{VSl0SHYEkC`OlAI%Xi1KMtNuF+w^jLH{Y}QCypSSh*vwH$V3d(n5Y%2c81#Z!+m1 z`WDdN&e8_a_kcbOdbWNZ0{tD(v(4q_Kp&Yv{w(M@urG+V%s%AaZuTimKCZq3m_~?Gu$L638DZ;adHsi0?XM4F1)`_7bAP5mB;<_{H2AyNMHUMfZxw7yfpxU;f54`j15+HSF$|5Qi!737r7T0 z#rJMX_7Cg=g?EQVe|^k=-La@EJMr~I)GuK=UholhEZzSnMg30Osl0>-u!^Cd;hhXS z7;a;@li^;5`xp)|9AbEyp|icewXS}*rsVMR!W&(4nwqxi-Yfnp;ID%H=W}AJU;_P)n(+I@rb5F>5wh%Md<`cyv3CdQ-x)uT zC%o9R0sj}qZ^4&%D(oilJ5JKSnG=rE??xUY{3G0MkrdPD4NAg)ml;*K#2CNJ!T%8B zTOIAv8{$fqRSQ7p2o!5GwHbapR?}W!JzwO6CiddQg19Gp9^n3py&2FojIZOw>tl86 z8NZb67yCuf?q~czu|LIL9{3g{au@8;9QF(_|4B~FKVtn;kq|GWo|Q<1%8!@hB2#~t z15ftnx+FilPYVh>E46`pnEw?Hknx)tzm)O$Sg%O`3GT1*PYL61cZ~bHkh=){ z-)3X!-VT)|;Ll|LcGlyJp9iz>|CIUP{HSrc7z;4r zD|z8Am1b%yfWH!Y)bDY5xzd`M-#L$V0)J8Ng__zouo{hiMNRt8ay+QM|BCn(lMRkC z|BGzr^-L?oLQQ(AcwR4J{0)qE#-|_nO!|A7-WA9%)goKQF&tz2$h%4$B>Xc^Ei*G zw0kY%2iQN#|MiSN&i2=_{tm_;WIgj4e;@G0*ta;x>$A*1mGgyV?`R7f;SkO$ z$;d$`rbP6BIE5t~HR3&5OFYmX)QaY8T_Q1JK(*W> zj#V*mvJ7D&bRtW@h~WI20M2U(g>l+US5VYTA`wkrS$E6wWpxngYSwFYKBHwt{j$|w z-MglSPRr489+U3%=@RLysn_(HkFQy_y0+SszGcOV1~1O9S+=~+%g5JvO7+{sLsW5w zO>LwhP#f`jEo=m?sV?=_uWBgy8zgE<`4}9-(nM$EnEE~XYIz0@9_5Ndc-Ab!Svb)y zoKMs3DWj8a#0fb8j1laqqN}#9+2i#>QVeOVr`8YuZiLD*X`ncTs7f4>BTu@~ z^l&I(1VqGCDov1z2q}+Vk0GKHh`@lx=%}Nvs2M@wkRFV6^vFg%Wr`+|=nFLtVKiT% zH!S24t&oq=)!^_MMs)HK&I^Jzoel}o15jGxl{y+dbO=&IIrjo)z-!~pfQ;aW3q_lP zU)b+a_B-14EJ9$!1JMm(YgU9wiS*e*oqF67i*E|VLpqHTMTnUCdhIPZrYIDN>Rp}T zknmonBbU-WjkBMu@!k{WFraj{h;K?B^v(SsY|UXBNTxws64VPSIGr9ce`w zMMgImj_!FoI^@K#M5Cg6<2k*}^{du2=+pxTijVr;>xbh%$uZ68cnMNnXt+l-Au!mF)+$0J<_;1kK!_e4rgYO zC(7C*(b{$-WX$1Gm6)=2x(w4P6gJbRKf;HGIpWgHe(!Vcn0*lGM6QYao#r59N81wO zXdO;!z~N$H95F_Tj1Fz{wwvs$(76gL!NuXAP6JuJ42QM}htU+3CzYAL;t4u#R>6!c z+RWy%x-vuj$g|dP5}VyGaEdr%uF5*q3`d!frzq8{GvOQ(YqIrnVKa`ui#n6W2M#N_ z7K+u&voI3HyHoAhz#vU^hVQN&=N|HUBW1nx^WIFiA_8e3L}zGWH4mHfU=<2sSOU?Y z%+@q-7OGUJ&eLnuy`F`kNJ|UO^aG=A^mK&1SO@8UqqG8PKNM@%1HoXpv(wC@GP&!G ztE<&UC;J>X!x)F(VG$H-k262mC+E10hKKeg>J2iLCFvl&4?0}s^y=B)KU!jz$h`&} zh#jK2{EDPbTZxH1<;50L%3yfB{zl!uioA=(zML2PEE_UfcQ=F$y|KgEd5PIYiBg^n zh+&6O$Zh7h1~Kh6#Nxu!-mF7@!#IA*1+@La3>Hf5+Z^8I$i~uFw$ce!Hq0MKR#EvO zJs*!7^2)T~rg`YlW1E4LeFNR_tUdec&4^ZUW~F^zpoi@6^aCPk$~b~aWE{Pnyfl8# zi32A8p@}8^=-AVWEiJY;eEy?3zs4Z*r!>BElkEWFf@MVj2kX# z18vPFIvq6a)XOS$4y9bJD$H*dDlf_JJl2cu?3rcEc!-PzM_1eyVjxP-0hDiXyM>(JbIi#Y7YmrZv^JchGZ zjUF4SxhsMLl_McW;aJiIbYnrVw+1>}HFu~diY6p9;*zovC%EFPds;;YEgo(QkN{tG zv>BRPte|dOx;Mm7rHjsRP;=v~RaC_u(jAY9uYm4wE8kma4MCf#p&1;v8tx8;I}9w3 zbRMqIDsMYT9qJm52ihZ0FBKwJX>Q!_pj`mprul~f-F~D;8F-8&iu1g5zWu{g$!k_{ z@ezD*OWl;ub}qP*!ENfaQh}OX-g!Q_dXA%n@Hi)})S_mWSI>JDbft0Av(xnQF;sEV z20f+|MZMRc;2g%|F@`8k`vbt@maW-;_1=Sm#jKcYBtI*8bswAVx8aeQDX-q6P*A-$ z0Txk6hrQg53cZt{>{st0C^(;)mHmoO!FxcbcN|n*z2~6dK9(o@$xdZIqqTlqkWZDo zdhbF(_1=YQU&*WfKg{yWS)qE5LqQjJnB?geu2cSNz!8hmk6WLzFy!0oj2u7ydqAQgo*gOsRlo2!)3hCzW|>hZFQ+R +#include #include template -size_t incremental_seq(const T& cnt) { +std::size_t incremental_seq(const T& cnt) { int max_len = 0; auto iter = cnt.begin(); @@ -26,9 +26,10 @@ size_t incremental_seq(const T& cnt) { } -// int main() { -// std::vector v{ 4,1,2,3,4,3,4,5 }; -// std::cout << incremental_seq(v) << std::endl; +int main() { + std::vector v{ 4,1,2,3,4,3,4,5 }; + std::cout << incremental_seq(v) << std::endl; + + return 0; +} -// return 0; -// } \ No newline at end of file