Сап, Двачик,нужна твоя помощь. Есть данная задача. Дайте хотя бы подсказочкц че делать то ебана в рот. Язык сиФормат входного файлаВ первой строке входного файла input.txt находится одно натуральное число n (1 ≤ n ≤ 10) — количество команд, участвовавших в чемпионате. В следующих n строках перечислены названия этих команд. Каждое название команды находится в отдельной строке и является словом, состоящим только из строчных и заглавных букв латинского алфавита. Длина названия команды не превосходит 10, все названия команд различны.В следующей строке входного файла находится одно целое число m (1 ≤ m ≤ 100) — количество матчей, которые команды сыграли за время чемпионата. Следующие m строк содержат результаты матчей.Каждое описание матча содержится в отдельной строке. Описание матча состоит из названия первой команды, после которого через пробел следует счет матча. Счет матча — два числа, не превышающих 10, разделенные двоеточием. После счета матча через пробел дано название второй команды.Гарантируется, что в матчах участвовали только команды, перечисленные в списке участников, и то, что команды, участвовавшие в матче, всегда различны.Формат выходного файлаВыведите в выходной файл output.txt m строк, каждая из которых содержит название команды и количество выигранных и проигранных этой командой матчей. Между названием команды и количеством выигранных матчей должен стоять ровно один пробел, а между количеством выигранных игр и количеством проигранных — ровно одно двоеточие. Команды перечислите в том же порядке, в котором они перечислены во входном файле.
Спасительный бамп номер 1
Спасительный бамп номер 2
Спасительный бамп номер 3
Бамп
Это по идее должен быть динамический массив с присвоением каждой командеи ее результатам переменной?
Ну где же вы, мамкины погромисты
>>148041257 (OP)Регуляркой распарсить это говно можно.
>>148041257 (OP)>че делать то ебана в ротГовнокод, что же ещё то. Заебенил переменных и посчитал, потом вывел.
>>148041853Ну так же некрасиво, и я же не знаю сколько команд, может быть их 20, мне что 20 переменных для каждой команды ебошить, а потом ещё и для их счета?
>>148041950Если есть sql, приебень таблицу. А так, что плохого в 20 переменных?
>>148041257 (OP)Распарсить-то хоть можешь?
>>148042022Это нерационально, не?
>>148042026Нимагу
>>148042073А делать говно из палок по твоему норм?
>>148042022Какой блядь sql нахуй, тут задача на двадцать строчек, вы чё ебанулись тут вконец
>>148041774Строшь список таких структур, потом обходишь их, чтобы определить победителя и проигравшего, инкриментируя соотвествующие счетчики, первые 5 строк вообще не нужны в таком случае.
>>148042103Убей себя. Нахуй ты полез в погромирование, если не можешь считать строчки файла и разъебенить их на куски.
>>148042113Да
>>148041257 (OP)select t from ts left joinselect t, sum(w), sum(l) from(select t1 as t, d1>d2 as w, d2>d1 as lfrom msunion allselect t2, d2>d1 as w, d1>d2 as lfrom ms)group by tusing(t)
>>148042149Мы не петухи прост)))
>>148042103Ну вот и иди нахуй, пидар. Даже стандартную библиотеку си ниасилил, о чем с тобой можно говорить?
>>148042198>>148042154Какие вы все злые
>>148041257 (OP)Ща напишу, погоди.А хуй, не напишу. У меня C#. А еще аноны засмеют.
>>148042316Пиздуй стандартную библиотеку учить.
>>148042372Чет проиграл с пика.
>>148041543Три массива: имена команд, количество выигранных матчей, количество проигранных.
>>148042372Как будто оно отличается.
>>148042372Не мочь в С в 2017
>>148042381Хорошо, допустим могу, я просто не сразу понял, что значит распарсить, но вроде как теперь дошло. Это типа значит разбить строку на переменные и считать их? Если вы про это, то я могу
>>148041257 (OP)Ты гуманитарий, что ли? Задача такой тривиум, шо пиздец.
>>148042560Иди нахуц, я просто школьник
Ты таким хочешь стать? Ты не сможешь. Ты остановишься на таких простых вещах как считывание из файла. Ты даун. Сколько лет?
>>148042560Школьник хочет стать погромистом за 3000ккк+/с
>>148042622Не это третий тур олимпиады
>>148042581И чо. Я такое в 4 классе сделать мог. И это без мам пап всяких кружков и т.д.
>>14804260915 ежжи
>>148042581И шо, шо школьник? Я в седьмом классе на ZX-BASIC'е пилил "Битву магов" для старого-доброго Спекки.
>>148042432struct team { char Name; uint8_t Wins; uint8_t Loses; struct team next;};struct team* Teams;Сваязанные списки рулят
>>148042646ссылку/название в студию, обоссым тебяМимо успешный олимпиадник
>>148042683Я как родился, вместо слова мама начал говнокод говорить
>>148042646>олимпиадывенесуэльский лыжник
>>148042727макака и его звездочки
>>148042727Структ тим ЗВЕЗДОЧКА
>>148042727Вот ща это спасибо
>>148042833Ты же ниххуя не понял отсюда, альдебаран
>>148042863Лол.
>>148042863Бляьь какая хуйня знакомая. Это тд чёрной пули?
>>148042863Хули там понимать. Набрали команду и заебенили в группы.
>>148042953>изБыстрофикс
>>148042953ЗВЕЗДОЧКА такая есть
>>148043010Звездочка?
>>148043059Пёздочка.
>>148043059ЗВЕЗДОЧКА да
>>148042980Какие группы, блядина? У тебя рандомайзер на генераторе слов включен?
>>148041257 (OP)Как ты вообще с программированием связался, если не можешь это решить? Это даже не математическая задачка, блядь.
>>148041257 (OP)Лучше объясни, в чём конкретно твоя проблема."Нихуя не понятно" — не тот ответ, который я хочу услышать.
>>148043177Не помогай ему
>>148043177Не знаю как реализовать
>>148043177тохоблядь закукарекал
>>148043154>дажеНо ведь матан не нужен. А где нужен, там есть либы.
>>148043250Программист мышкой итт
>>148043211Что это?Я тебе не помогаб
>>148043311Что
>>148043282Таки не угадал.
>>148043342Чтт
>>148042316Я давно уже заметил. У 99% пидарах, которые освоили на среднем уровне хоть что-то, дико расчёт ЧСВ. Особенно это заметно на всяких помойках типа cyberforum. Вместо того чтобы помочь человеку, они начинают рассказывать какой он тупой дебил. Даже в этот тред уже набежала кучка погромистов.
>>148043418ЧТО ТЕ ТУЖНЫ
>>148043362похуй. Ведешь себя как натягиватель тем на вордпресс
>>148043466>натягиватель тем на вордпрессВот ща обидно было на самом деле нет
Бля. Попросил помочь, устроили срач. Охуенно.
>>148043211Ну вот смотри.Для начала тебе нужен список команд. Попробую объяснить самую тупую реализацию.Создаёшь два статических массива размером в 10 можно обойтись статическим потому что по условию задачи максимум 10. Один для названий команд, другой для их очков.Читаешь из файла инт. Потом читаешь из файла n строк, где n – тот инт, что ты прочитал до этого. Забиваешь всё это в первый массив.Оп, отпишись, ясна эта часть или нет.
>>148043603Сука
>>148043603Блядь. Ненавижу голый си в отношении работы со строками.
>>148043682Scanf есть. Я вообще охуел
>>148043682Зато бытро.
>>148043603Если первый массив названия команд, то может стоит считать char?
>>148043603>Один для названий команд, другой для их очков.Исправление --- придётся городить три массива. Имена команд, количество побед и количество поражений. Не надо ему про стракты рассказывать, он же и так нихуя не понимает.
Оп хуй иди попроще задачи порешай. Например как пол подмести
>>148043846Пол чист
>>148043760>Не надо ему про стракты рассказывать,Ни чего не могу с соьой поделать, меня коробит от НЕСТРУКТУРИРОВАННОСТИ.
>>148043864Ну вот придумай себе занятие по силам. Не надо вскрывать эту тему
>>148042173Вот же решение, хули ты бампаешь?
>>148043760Так.Затем ты читаешь ещё один инт n из файла.Потом идёт цикл (псевдокод):for(i = 0; i < n; i++){team1 = readString();r1 = readInt();readChar(); // Прочитать : из файла и выбросить его к хуямr2 = readInt();team2 = readString();if(r1 > r2) { // Прибавляешь единицу к победам команды team1 }else { // Прибавляешь единицу к победам команды team2 }// Ситуация, когда r1 === r2, условием не покрыта.}Остаётся только вывести, пробегаясь по трём массивам одновременно.
>>148044076Так, спасибо, пойду разбираться
>>148044076>Ситуация, когда r1 === r2, условием не покрыта.Логично, когда сыграли в ничью, то ни к победам ни к поражениями прибавлять не надо.
>>148044076Бля щас спросит чо за функция readstringА ты мощный. Напиши за меня одну штуку на руби. Тоже олимпиада
>>148044227Я же указал, что это псевдокод.Ненавижу в си работу со строками. Бррр.А в руби я ничего не смыслю.
>>148044300Ну погуглиль. Там просто. Или давай лучше алгоритм чтобы выигрывал в коридор игру
>>148044365>в коридор игруВо что?
А как считать имя 1 команды в n элемент массива, а имя другой в n+1, если они в одной строке?
>>148044365while(1) { шаг_вперед(); switch(впереди) { case моб: atack(); break; case стена: поворот(10градусов); break;}}
>>148044579Ну блять настолка Коридор
>>148044629Охуеть победил прям
Так можно считать имена? И ещё, как прекратить считывание после того, как он уткнётся в количество игр?
>>148045003>как прекратить считывание после того, как он уткнётся в количество игр?Тебе в начале даётся число n, количество имён.Считывай ровно n имён и всё.
>>148045003У тебя в первой строке количество команд, ты его уже прочитал, так хуле ты пытаешься прочитать 10 команд а не столько, сколько указано?
>>148045135Ага, понял, спасибо
>>148045003Дибил бля. пока не конец файла. Ну понятно почему ты на двачах сидишь
>>148045003Ждем сегфолтов при попытке записать строку поадресу (char*)name, где char name[10];
>>148045771>(char*)nameРазумеется
А вот так? Если что, то str массив из одного элемента
>>148045815(char*)name[АЙ]
>>148042432Пусть ассоциативный массив на красно-черном дереве ебанет.
>>148045822Почитай, что возвращает fgets()Потом подумай хорошенько над циклом
>>148045998Обязательно char? Инет нельзя? Дальше если у меня строка только из 1 числа?
>>148046103>дажеБыстрофикс
>>148046103>интБыстрофикс
>>148046103Даю подсказку. n - это не то, что ты собственно прочитал из файла.
>>148042744Че, прям родился, и такой: "Hello world!"? )))
>>148046197Ну у меня есть число команд, как написано в инете, fgets считывает либо 1 строку, либо пока не закончится объём заданного количества символов на чтение. Вот я задал 1 символ на чтение, создав массив из 1 элемента, использовал функция fgets, что-то не так?
>>148046331Или в н получается поместится адрес массива?
>>148046331Хорошо, давай так.Расскажи мне, как ты понял, куда именно помещается результат, прочитанный функцией fgets(), и что тогда такое n?
>>148046331Загугли уже чтение всей строки из файла.
>>148041257 (OP)Единственная проблема, которая может возникнуть, это связать строку с числом. Это можно сделать через список(раз уж тут такие ограничения халявные), либо через деревья, что сложнее. Ебашь списки ОПыч.
>>148046469Да загуглил уже
>>148046463Результат помещается в н, н в данном случае, то что будет содержаться в первой строке. Я не прав?
>>148046479Ты про struct?
>>148046573Блин, как бы попроще, не вдоваясь в детали. Ну давай так.На самом деле результат будет положен туда, куда УКАЗЫВАЕТ str, однако если все прошло успешно, то n будет равно str.Но самое интересно то, что в n == str == "3" по твоей пикче. А вот "3" != 3. Смекаешь?
>>148046799Вроде да, то есть в цикле, мне надо писать i<str +1?
>>148046888Но ведь str это массив
>>148046888А вот и нет."3" - Это строка char*А вот 3 - это число, например int
>>148047036Так я str определял как int
>>148047085Потому что мне там нужно число
И ещё самый главный вопрос. Как считать для одной команды счёт до двоеточия, а для другой после
>>148047085Ах даже так, все хуже чем я думал.Даже если оно скомпилится (скорее всего нет), сделает оно совершенно не то, на что ты расчитываешь.
>>148047189Ясно, тогда как считать только одно число n в формате int
>>148047158Изи же.
>>148047238Никак. Читаешь число как строку, а потом переводишь в число. Через atoi вроде.
>>148047798Нахуй это говно, если scanf все сам умеет?
>>148047685Вот за это спасибо огромное, только мне надо начать такое считывание с середины файла. Как это сделать?
Так опыч на си или крестах пишет? Что за олимпиада такая, что на си заставляют писать.
>>148047896Олимпиада итмо
>>148047896Писать то можно на чем хочешь, просто мой язык си
>>148047892Может тебе и весь код написать еще?
Мне не нужен код, мне просто нужно знать как это сделать, если скажешь, буду очень благодарен
>>148047847А, тогда fscanf(file, "%d", &i);
Вот так вот можно?
>>148048111Да, но ты не оп>>148048037Ну он тебе подсказывает вот.
>>148047968Ты в курсе, что плюсы компилят программы на си, а еще у них есть std::string, std::map, с которыми твоя задача в пару строк решается? Честно, ты аутист?
>>148048328Немного
>>148048328В си нет шаблонов
>>148048484В шары долбишься?
>>148048328>Ты в курсе, что плюсы компилят программы на сиНахуй пошел
>>148049322Сам иди нахуй, неуч.
js-бог вкатился, задавайте ответы
>>148049932Это ES6?
>>148049932Даже джуном бы тебя не взял, маня. Тут нужен редьюс, а потом мап.
>>148041257 (OP)Тебе на /ga/ , там больше инфы дадут
>>148049932У тебя стиль аутичный, будто ты в учебнике по ес6 пропускал каждую вторую строку.
>>148049932
>>148050234А так возьмешь?
>>148052669Зачем ты для всего используешь let?
>>148041257 (OP)
>>148052745не знаю, так привычнее
>>148052669Что делает reduce?
>>148052992Переводит массив значений в какое-то одно значение.
>>148052992Здесь или вообще?Здесь строит мне такой вот объект (прикреплейтед).Вообще проходит по массиву с сохранением промежуточного результата.
>>148052627Или вот такая более хитровыебанная параша.
>>148053249А map?
>>148057786Здесь - каждой команде из изначального списка сопоставляет число побед и поражений для этой команды. Затем финальным джойном склеивает все в строку.Вообще - проходит по массиву.
>>148058019А как это ложиться на map-reduce который в гугл придумали?
>>148061177Map - распределяет исходные данные (поисковый запрос) по серверам.Reduce - собирает данные с каждого сервера и формирует единый список.
Але, маня, это обычная реализация того что написанопомнится решал я ее как-топросто сделай то что просят
>>148061429
Ни одного правильного решения. Cказано-же что язык С. Читать из файла input.txt. Писать в output.txt. Дебилы, блять!
>>148070696Ну и блять для совсем тупых скажу что С, С++ и С# - это разные языки.
>>148071008Это значит так шутка что ли блять?
>>148071712Век живи - век учись.
>>148041257 (OP)Да ты какой то хуесос походу
>>148071712>Это значит так шутка что ли блять?Ох как-же я люблю ебать студенов за такую хуйню. Думают что они всезнайки...
>>148049932Данил, ты не бог. Ты тупой уебан
>>148041257 (OP)Хуяришь структуру с Name(char[10]), Wins(int), Loses(int). Хуяришь массив, а лучше Dictionary, состоящий из объектов данной структуры. В массиве, до обработки матчей, у тебя быть должны быть все команды с именами и нулевыми значениями статистики. А теперь мякотка. Из последующих строк ты должен узнать кто из этих пидоров выйграл, а кто проиграл. Как узнаешь, найди их в массиве и повысь им соот. статистику на единицу. А после выведи всё на экран.
Тут же просто сравниваешь значения строк в строках , где играют команды друг против друга и делаешь счётчик на каждую команду в котором учитывается количество побед в зависимости от сравнения. Потом просто выводишь эти названия всех участвующих команд и выводишь количество их побед в аутпут... Но вот вопрос, считается ли ничья победой или поражением. Если умеешь работать с тхт файлами на си, проблем составить не должно, алгоритмы все стандартные и умений особых не требуют, все предельно просто!
>>148045003fscanf ждём указатель же, там надо &(name)
Все, кто тут код писал, проверьте на таких входных:2CSKA MoscowSpartak Nalchik2CSKA Moscow 2:0 Spartak NalchikSpartak Nalchik 1:4 CSKA MoscowМне кажется, большинство "гениев" с двача соснёт.
>>148090011То есть &(name[i]), забыл про bbcode
посчитай в ручную на бумажке, потом выведи то что посчитал, тут всего 4 строк, нахуя заморачиваться?
test
>>148041257 (OP)Говно какое-то на картинке справа, как по этому тесты писать? Такая традиция, что орочьи задания не вычитываются. http://olymp.ifmo.ru/shared/files/201304/74_619.pdf стр 4-5
>>148090260> Каждое название команды находится в отдельной строке и является словом, состоящим только из строчных и заглавных букв латинского алфавита. Длина названия команды не превосходит 10, все названия команд различны.> СЛОВОМТак что пошёл нахуй, умник. В таких задачах ясно сказано, какие входные.