rdfs:comment
| - T9 (czasem i słownik T9) – rewolucyjny system, pozwalający w rekordowo szybkim tempie napisać SMS i spalić się ze wstydu po przeczytaniu wysłanej wiadomości.
- NOT MADE YET
- The T9 section of the Technician test contains information on antennas, feedlines.
- A me piacerebbe farmi quattro chiacchiere con l'inventore del T9, un giorno. Me lo metterei davanti. Gli offrirei un tè. Lui è sicuramente uno che non beve alcolici, sarà per forza uno che beve tè e un sacco di caffè. Gli offrirei dei pasticcini, anche. Aspetterei di vederlo addentare la ciliegia verde della frolla per bloccargli il polso e chiedergli: E quando lui tossirà, si ingolferà, si batterà il petto e cercherà di arrivare con quella sua mano pallida alla tazzina di tè, io stringerei ancora di più la morsa e gli chiederei: A questo punto mi risiederei e lo fisserei negli occhi.
- Постановка (gromozeka, 15.10.2007) Думаю, все здесь присутствующие знакомы с системой Т9 ( ), соответствие цифр и букв кириллицы в этой системе следующее: 2 - а,б,в,г 3 - д,е,ж,з 4 - и,й,к,л 5 - м,н,о,п 6 - р,с,т,у 7 - ф,х,ц,ч 8 - ш,щ,ъ,ы 9 - ь,э,ю,я Таким образом, каждой последовательности букв соответствует одна последовательность цифр, например, слову "последовательность" соответствует последовательность "556433522634955669". Скачиваем словарь словоформ русского языка отсюда: 1) Какой процент слов в словаре "уникален" (последовательность цифр, соответствующая слову из словаря, соответствует только этому слову)? 2) Выведите последовательность цифр, которой соответствует наибольшее кол-во слов из словаря, выведите соответствующие слова. 3) Выведите самую дли
- [[Soubor:20-mobil.jpg|thumb|Váš mobil ví, co chcete napsat. Narozdíl od vás.]] T9 odboji ve devitka ke vynalez, kufry tam usnadnuje prani pop. Spocita u ton, we var mocil mobil vhodne skoto, kdy bicete naprav jeste predtim, mez in napisete, a uz val nemusite volil namahav ste prsty. Poslu val muzete nit hotovou trikrat frite, mez cez T9. Vo je tekla pomoc, srn vsechny, jen krov zavisli ma sten mobilu a bez prani pop si ty nedovedou stul zivou cni predstavit. Nevine prepne, jen ptal v zrodu T9, vysada vo, ze vo byka nejaka valna sluzba, nejspis rana lic. Inteligentni ve devitka zob slota x monic jazyku, takze muzete rh prav i s vasini zahranicnimi janosi. Umi anglicky, nemecky, vlivprky, zvladne i gamuda. Pravec, nacas vedla nekalou najmu chybu, cle uv snadno napravite. Kdyby od, atenas poz
|
abstract
| - T9 (czasem i słownik T9) – rewolucyjny system, pozwalający w rekordowo szybkim tempie napisać SMS i spalić się ze wstydu po przeczytaniu wysłanej wiadomości.
- [[Soubor:20-mobil.jpg|thumb|Váš mobil ví, co chcete napsat. Narozdíl od vás.]] T9 odboji ve devitka ke vynalez, kufry tam usnadnuje prani pop. Spocita u ton, we var mocil mobil vhodne skoto, kdy bicete naprav jeste predtim, mez in napisete, a uz val nemusite volil namahav ste prsty. Poslu val muzete nit hotovou trikrat frite, mez cez T9. Vo je tekla pomoc, srn vsechny, jen krov zavisli ma sten mobilu a bez prani pop si ty nedovedou stul zivou cni predstavit. Nevine prepne, jen ptal v zrodu T9, vysada vo, ze vo byka nejaka valna sluzba, nejspis rana lic. Inteligentni ve devitka zob slota x monic jazyku, takze muzete rh prav i s vasini zahranicnimi janosi. Umi anglicky, nemecky, vlivprky, zvladne i gamuda. Pravec, nacas vedla nekalou najmu chybu, cle uv snadno napravite. Kdyby od, atenas pozna, cm vam mdlo byt. Chyb ke urcite mim, new kolik byste pani udelali. Jedinou nevyhnemt ke, ze nevni sprosta slota (mars. kolot, shan, air). Vo ke v nejmin tendr sum % jeho vyrazita. Neco naopak tam mocil touti sproste skoto, kdyz hm uvada nechcete souzit. Treba u porce nastude seda. Nave-ji nekaje zajimate zkusenosti s T9, muzete re s mini zed sverit. center|150px
- NOT MADE YET
- A me piacerebbe farmi quattro chiacchiere con l'inventore del T9, un giorno. Me lo metterei davanti. Gli offrirei un tè. Lui è sicuramente uno che non beve alcolici, sarà per forza uno che beve tè e un sacco di caffè. Gli offrirei dei pasticcini, anche. Aspetterei di vederlo addentare la ciliegia verde della frolla per bloccargli il polso e chiedergli: E quando lui tossirà, si ingolferà, si batterà il petto e cercherà di arrivare con quella sua mano pallida alla tazzina di tè, io stringerei ancora di più la morsa e gli chiederei: A questo punto gli toglierei la tazza davanti, mi alzerei e la metterei nel lavandino. Così, per fare massaia. Con voce ferma gli direi (magari strofinandomi le mani sul grembiule): A questo punto mi risiederei e lo fisserei negli occhi. E a questo punto lo porterei al lavandino e gli farei lavare la tazzina.
- The T9 section of the Technician test contains information on antennas, feedlines.
- Постановка (gromozeka, 15.10.2007) Думаю, все здесь присутствующие знакомы с системой Т9 ( ), соответствие цифр и букв кириллицы в этой системе следующее: 2 - а,б,в,г 3 - д,е,ж,з 4 - и,й,к,л 5 - м,н,о,п 6 - р,с,т,у 7 - ф,х,ц,ч 8 - ш,щ,ъ,ы 9 - ь,э,ю,я Таким образом, каждой последовательности букв соответствует одна последовательность цифр, например, слову "последовательность" соответствует последовательность "556433522634955669". Скачиваем словарь словоформ русского языка отсюда: 1) Какой процент слов в словаре "уникален" (последовательность цифр, соответствующая слову из словаря, соответствует только этому слову)? 2) Выведите последовательность цифр, которой соответствует наибольшее кол-во слов из словаря, выведите соответствующие слова. 3) Выведите самую длинную последовательность, которой соответствует более одного слова из словаря, выведите соответствующие слова. 4) Создайте словарь последовательностей: В каждой строке файла последовательность цифр, за ней все соответствующие ей слова отсортированные лексикографически. Сами строки, разумеется, тоже отсортированы. "словарная статья" может выглядеть например так: 6329 - сдаю, себя, тебя Python, Vladimir the Red Sunny, 17.10.2007, link Используется вспомогательный файл "t9_dict.txt", состоящий из 8 строк вида "2 а б в г" и т. д. Забыл сказать - тот файл я предварительно передраконил, чтобы остались только сами слова, по 1 на строку. from collections import defaultdict def word_to_t9(w, d): return ''.join([d[l] for l in w]) def unique_percent(dict): total = len(dict) unique = 0 for el in dict.values(): if len(el) == 1: unique+=1 return 100*unique/total def max_words(dict): max_len = 0 max_elem = -1 for el in dict.keys(): if len(dict[el]) > max_len: max_len = len(dict[el]) max_elem = el return (max_elem, max_len) def max_non_unique(dict): max_len = 0 max_elem = -1 for el in dict.keys(): if len(dict[el]) < 2: continue if len(el) > max_len: max_len = len(el) max_elem = el return (max_elem, max_len) fi = open("t9_dict.txt", "rb") dict = {} for line in fi: lst = line.strip().split(' ') n, s = lst[0], lst[1:] for i in s: dict[i] = n fi.close() f_dict = defaultdict(list) fi = open("words.txt", "rb") for word in fi: f_dict[word_to_t9(word.strip(), dict)] += [word.strip()] fi.close() str_list = [i[0]+' - '+', '.join(i[1]) for i in f_dict.items()] str_list.sort() fo = open("result.txt", "wb") for s in str_list: fo.write(s + '
') fo.close() up = unique_percent(f_dict) mw = max_words(f_dict) mnu = max_non_unique(f_dict) report = open("report.txt", "wb") report.write("Unique words: " + `up` + " %
") report.write("Max. words: " + mw[0] + ", " + `mw[1]` + " words
") report.write("The words are: " + ", ".join(f_dict[mw[0]]) + "
") report.write("The longest non-unique: " + mnu[0] + ", " + `mnu[1]` + " symbols
") report.write("The words are: " + ", ".join(f_dict[mnu[0]]) + "
") report.close() Python, gromozeka, 18.10.2007, link Начал подвергать программу Владимира жесткой обфускации на случай, если кому-нибудь вздумается меряться длиной кода (программа классно написанна, даже жалко с ней так поступать icon_smile.gif ): # -*- coding: cp1251 -*- from collections import defaultdict dct,rus={},"абвгдежзийклмнопрстуфхцчшщъыьэюя" for i in xrange(len(rus)): dct[rus[i]]=`i/4+2` fd = defaultdict(list) for w in open("words.txt", "r"): fd[''.join([dct[l] for l in w.strip()])] += [w.strip()] open("result.txt", "w").writelines([s+"
" for s in sorted([i[0]+' - '+', '.join(i[1]) for i in fd.items()])]) up = 100*len([el for el in fd.values() if len(el)==1])/len(fd) mw = max([(len(fd[el]),el) for el in fd.keys()]) mnu = max([(len(el),el) for el in fd.keys() if len(fd[el])>=2]) report = open("report.txt", "w") report.write("Unique words: " + `up` + " %
") report.write("Max. words: " + mw[1] + ", " + `mw[0]` + " words
") report.write("The words are: " + ", ".join(fd[mw[1]]) + "
") report.write("The longest non-unique: " + mnu[1] + ", " + `mnu[0]` + " symbols
") report.write("The words are: " + ", ".join(fd[mnu[1]]) + "
") report.close() J, danio, 19.10.2007, link load 'files' lz =: ' abc def ghi jkl mno pqrs tuv wxyz ' fw=: #~ [:>([:*/e.&lz)&.> in=: fw 'b' fread '/usr/share/dict/british-english' dgt=: ([:<.5%~lz&i.){'23456789'"1 dgtK=: dgt&.>in ch=: <@:/:~;~[:dgt(0&{::) dict=: /:~dgtK ch/. in unPerc=: (100*#%~[:#~.) dgtK lwChap=: {.(\:[:(#&.>)}."1) dict mChap=: (#~[:>[:(1<#)&.>{:"1) dict lkChp=: {.(\: [:(#&.>){."1) mChap fmt=: [:([,', ',])/[:>[:>{: 't9dict.txt' fwrites~ (([:>{.),' - ',fmt)"1 dict K, zevun, 20.10.2007, link t9: {:[(x<"а") | (x>"я"); "\0"; *$2+(x>/:("г";"з";"л";"п";"у";"ч";"ы";"я"))?0]}' trim: {(-+/&\|" "=x)_ x} split: {1_'(&x=y)_ x:y,x} nfltr: {y@&~|/'x=y . z} join: {(#x)_ ,/x,/:y} d: ,/(nfltr["\0";;(;0)]@{+(t9'x;x)}@split[;" "]@trim@)'0:"words.num" g: =d[;0] g: g[n] r,: ,"Max words: ",d[*m;0],", ",($#m)," word(s)" r,: ,"The words are: ",join[", "]d[m;1] m: &1#:'d[g[m;0];0] r,: ,"The longest non-unique: ",d[*m;0],", ",($#d[*m;0])," symbol(s)" r,: ,"The words are: ",join[", "]d[m;1] "report.txt" 0:r "t9dict.txt" 0:{d[*x;0]," - ",join[", "]{x@ C++, Narwal, 21.10.2007, link #include #include "fstream" #include #include #include #include #include #include typedef std::multimap< std::string, std::string > MultiMap; struct DictTrait { int total; int unique; std::pair< size_t, std::vector< MultiMap::const_iterator > > maxLength; std::pair< size_t, std::vector< MultiMap::const_iterator > > maxRange; DictTrait() : total( 0 ) , unique( 0 ) , maxLength( std::make_pair( 0, std::vector< MultiMap::const_iterator >() ) ) , maxRange( std::make_pair( 0, std::vector< MultiMap::const_iterator >() ) ) { } void ProcessUnique( MultiMap::const_iterator b, MultiMap::const_iterator e, size_t rangeLen ) { ++total; if ( rangeLen == 1 ) { ++unique; } } void ProcessMaxRange( MultiMap::const_iterator b, MultiMap::const_iterator e, size_t rangeLen ) { if ( rangeLen > maxRange.first ) { maxRange.first = rangeLen; maxRange.second.clear(); maxRange.second.push_back( b ); } else if ( rangeLen == maxRange.first ) maxRange.second.push_back( b ); } void ProcessMaxLength( MultiMap::const_iterator b, MultiMap::const_iterator e, size_t rangeLen, size_t wordLength ) { if ( wordLength > maxLength.first && rangeLen > 1 ) { maxLength.first = wordLength; maxLength.second.clear(); maxLength.second.push_back( b ); } else if ( wordLength == maxLength.first && rangeLen > 1 ) { maxLength.second.push_back( b ); } } }; struct ConverterToT9 { private: typedef std::map< char, std::string > Map; Map map_; public: ConverterToT9() { std::ifstream file( "D:\\programming\ asks\ 9\ 9_dict.txt" ); char num; std::string tmp, str; while( !file.eof() ) { file >> num >> tmp >> str; map_.insert( std::make_pair( num, str ) ); } file.close(); } std::string Execute( const std::string& str ) const { std::string res; for ( std::string::const_iterator i = str.begin(); i != str.end(); ++i ) { res.push_back( CharToT9( *i ) ); } return res; } private: struct CmpChar { char s_; CmpChar( char s ) { s_ = s; } bool operator()( const std::pair< const char, std::string >& i ) const { return i.second.find( s_ ) != std::string::npos; } }; char CharToT9( char s ) const { Map::const_iterator i = std::find_if( map_.begin(), map_.end(), CmpChar( s ) ); if ( i == map_.end() ) throw std::out_of_range( "Char wasn't found" ); return i->first; } }; void LoadDict( MultiMap& res, const ConverterToT9& conv ) { int num; float freq; std::string str; std::ifstream in( "D:\\programming\ asks\ 9\\words.num" ); if ( !in.is_open() ) throw std::invalid_argument( "Can't open file" ); while( !in.eof() ) { in >> num >> freq >> str; res.insert( std::make_pair( conv.Execute( str ), str ) ); } in.close(); } int _tmain( int argc, TCHAR* argv[] ) { //* ConverterToT9 conv; MultiMap res; DictTrait trait; size_t rangeLen; size_t wordLength; LoadDict( res, conv ); std::pair< MultiMap::iterator, MultiMap::iterator > range = std::make_pair( res.begin(), res.begin() ); range = res.equal_range( range.first->first ); std::ofstream out( "D:\\programming\ asks\ 9\esult.txt" ); while ( ( range.first != res.end() ) && ( range.second != res.end() ) ) { rangeLen = std::distance( range.first, range.second ); wordLength = range.first->first.size(); trait.ProcessUnique( range.first, range.second, rangeLen ); trait.ProcessMaxRange( range.first, range.second, rangeLen ); trait.ProcessMaxLength( range.first, range.second, rangeLen, wordLength ); out << range.first->first << " - "; while ( range.first != range.second ) { out << range.first->second << ", "; ++range.first; } out << "
"; range = res.equal_range( range.first->first ); } out << "Unique percent: " << 100 * trait.unique / trait.total << "%" << "
"; out << "Max range: " << trait.maxRange.first << " words
"; out << "Words are:
"; for ( size_t i = 0; i < trait.maxRange.second.size(); ++i ) { out << " " << ( *( ( trait.maxRange.second )[ i ] ) ).second << "
"; } out << "Max length: " << trait.maxLength.first << " symbols
"; out << "Words are:
"; for ( size_t i = 0; i < trait.maxLength.second.size(); ++i ) { out << " " << ( *trait.maxLength.second[ i ] ).second << "
"; } out.close(); getchar(); return 0; }
|