Форум » Обработка числовых последовательностей » Тенденция? » Ответить

Тенденция?

tavabar: Рассматривая последние предложенные варианты ЕГЭ (тренировочные, репетиционные...), прихожу к выводу, что в С4 не планируется проверка знаний по обработке данных строкового типа. В основном это задачи на обработку числовых данных, просто посложнее, чем в С2. Стоит делать далеко идущие выводы?

Ответов - 22, стр: 1 2 All

Поляков: tavabar пишет: Рассматривая последние предложенные варианты ЕГЭ (тренировочные, репетиционные...), прихожу к выводу, что в С4 не планируется проверка знаний по обработке данных строкового типа. В основном это задачи на обработку числовых данных, просто посложнее, чем в С2. Стоит делать далеко идущие выводы? Мне кажется, что нужно обращать особое внимание на работы, которые идут через МИОО, все-таки это ближе к ФИПИ. :-) Формально могут дать все, что подпадает под классификатор.

PavelG: Мне кажется, что нужно обращать особое внимание на работы, которые идут через МИОО, все-таки это ближе к ФИПИ Возник вот какой вопрос: насколько полные варианты заданий МИОО(часть А,В,С) соответствуют по сложности реальным заданиям? И можно ли как-нибудь познакомиться с реальными вариантами прошлых лет? Спасибо.

Поляков: PavelG пишет: насколько полные варианты заданий МИОО(часть А,В,С) соответствуют по сложности реальным заданиям? Этого никто не знает. А кто знает - тот молчит. :-) И можно ли как-нибудь познакомиться с реальными вариантами прошлых лет? Легально - никак.


кот Бегемот: PavelG пишет: насколько полные варианты заданий МИОО(часть А,В,С) соответствуют по сложности реальным заданиям? Судя по материалам прошлых лет, демо-версии эти задания соответствуют очень даже, другое дело, что в ФИПИ сидят мудрецы, и никто не знает, что им взбредёт в голову в этом году. Так в прошлом году они всех здорово кинули, предложив на ЕГЭ ряд задач, которых и близко не было в демо-версии, в итоге, например, задачу на системы логических уравнений (часть В) решили 4% сдававших, так что никто не может гарантировать, что в этом году они не выкинут что-то подобное. К примеру, возьмут да и вернут логические задачи или введут задачи на работу с видеофайлами. Пути ФИПИшные неисповедимы.

Айбу: В С4, судя по тренировочной работе от 23 марта, снова появились строки. Причем, задача нестандартная, сложнее многих.

Поляков: Айбу пишет: В С4, судя по тренировочной работе от 23 марта, снова появились строки. Причем, задача нестандартная, сложнее многих. А в чем сложность? Ищем первый пробел с конца строки, выделяем последнее слово...

Айбу: В том, что нужно как-то изменить окончание. И отсортировать, как я понимаю, массив записей.

Поляков: Айбу пишет: В том, что нужно как-то изменить окончание. Не нужно. Два массива строк по 12 элементов. И отсортировать, как я понимаю, массив записей. Ну, это стандартная задача.

oval: Поляков пишет: Два массива строк по 12 элементов. А второй зачем строковый? Вот, например, вариант решения type data = record m:string; c:integer; end; var s: string; n,i,j:integer; a:array[1..12]of data; t:data; Begin readln(n); for i:=1 to 12 do begin a[ i].c:=0; case i of 1: a[ i].m:='январь'; 2: a[ i].m:='февраль'; 3: a[ i].m:='март'; 4: a[ i].m:='апрель'; 5: a[ i].m:='май'; 6: a[ i].m:='июнь'; 7: a[ i].m:='июль'; 8: a[ i].m:='август'; 9: a[ i].m:='сентябрь'; 10: a[ i].m:='октябрь'; 11: a[ i].m:='ноябрь'; 12: a[ i].m:='декабрь'; end; end; for i:=1 to n do begin readln(s); while pos(' ',s)<>0 do delete(s,1,pos(' ',s)); {в строке оставляем только название месяца} s:=copy(s,1,3); {по трем буквам месяц определяется однозначно} if s = 'янв' then a[1].c:=a[1].c+1; if s = 'фев' then a[2].c:=a[2].c+1; if s = 'мар' then a[3].c:=a[3].c+1; if s = 'апр' then a[4].c:=a[4].c+1; if s = 'мая' then a[5].c:=a[5].c+1; {"май" из трех букв, поэтому учитываем окончание} if s = 'июн' then a[6].c:=a[6].c+1; if s = 'июл' then a[7].c:=a[7].c+1; if s = 'авг' then a[8].c:=a[8].c+1; if s = 'сен' then a[9].c:=a[9].c+1; if s = 'окт' then a[10].c:=a[10].c+1; if s = 'ноя' then a[11].c:=a[11].c+1; if s = 'дек' then a[12].c:=a[12].c+1; end; for i := 1 to 11 do for j := i+1 to 12 do if a[j-1].c < a[j].c then begin t:=a[j-1];a[j-1]:=a[j];a[j]:=t end; for i:= 1 to 12 do if a.c <> 0 then writeln(a[ i].m+' ',a[ i].c) end. можно было не заморачиваться с тремя буквами, а сравнивать целиком с названием месяца учитывая окончание

Поляков: oval пишет: А второй зачем строковый? Например, так: [pre2]const m: array[1..12] of string = ('январь','февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'); mr: array[1..12] of string = ('января','февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря');[/pre2]После этого if-цепочки можно красиво свернуть в циклы.

oval: const m: array[1..12] of string = ('январь','февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'); mr: array[1..12] of string = ('января','февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'); 1. только, что меня убеждали, что это не везде работает 2. + еще массив счетчиков Поляков пишет: После этого if-цепочки можно красиво свернуть в циклы. пожалуйстаif s = 'мая' then a[5].c:=a[5].c+1; {"май" из трех букв, поэтому учитываем окончание} for j:= 1 to 12 do if pos(s,a[j].m)<>0 then a[j].c:=a[j].c+1; end; в предыдущем посте выделено цветом, какие строки заменяет цикл

tavabar: oval пишет: while pos(' ',s)<>0 do delete(s,1,pos(' ',s)); Мне понравился этот способ получения последнего слова...

oval: tavabar пишет: Мне понравился этот способ получения последнего слова... Работает при условии, что после него нет пробела

Dmitry78: Добавил свое решение, идея та же самая, разница в получении месяца и немного в реализации type data = record p1:string; raz:integer; end; var Info: array[1..12] of data; n,k,i,m,j:integer; x:data; c:string; sl:string; begin cls; for i:=1 to 12 do Info[ i].raz:=0; readln(n); for i:=1 to n do begin read(c); for j:=1 to length(c)-3 do if c[j]=' ' then sl:=c[j+1]+c[j+2]+c[j+3]; if sl='янв' then begin Info[1].p1 := 'январь'; Info[1].raz :=Info[1].raz+1; end; if sl='фев' then begin Info[2].p1 := 'февраль'; Info[2].raz :=Info[2].raz+1; end; if sl='мар' then begin Info[3].p1 := 'март'; Info[3].raz :=Info[3].raz+1; end; if sl='апр' then begin Info[4].p1 := 'апрель'; Info[4].raz :=Info[4].raz+1; end; if (sl='мая') or (sl='май') then begin Info[5].p1 := 'май'; Info[5].raz :=Info[5].raz+1; end; if sl='июн' then begin Info[6].p1 := 'июнь'; Info[6].raz :=Info[6].raz+1; end; if sl='июл' then begin Info[7].p1 := 'июль'; Info[7].raz :=Info[7].raz+1; end; if sl='авг' then begin Info[8].p1 := 'август'; Info[8].raz :=Info[8].raz+1; end; if sl='сен' then begin Info[9].p1 := 'сентябрь'; Info[9].raz :=Info[9].raz+1; end; if sl='окт' then begin Info[10].p1 := 'октябрь'; Info[10].raz :=Info[10].raz+1; end; if sl='ноя' then begin Info[11].p1 := 'ноябрь'; Info[11].raz :=Info[11].raz+1; end; if sl='дек' then begin Info[11].p1 := 'декабрь'; Info[12].raz :=Info[12].raz+1; end; end; for i:=1 to 11 do for j:=i+1 to 12 do begin if info[ i].raz<info[j].raz then begin x:=info[ i]; info[ i]:=info[j]; info[j]:=x; end; end; for i:=1 to 12 do begin if Info[ i].raz<>0 then writeln(Info[ i].p1,' ',Info[ i].raz); end; end.

tavabar: tavabar пишет: Рассматривая предложенные варианты ЕГЭ (тренировочные, репетиционные...), прихожу к выводу, что в С4 не планируется проверка знаний по обработке данных строкового типа. В основном это задачи на обработку числовых данных, просто посложнее, чем в С2. Стоит делать далеко идущие выводы? Это писалось в середине марта... А сегодня уже ясно, что обработка данных строкового типа не проверялась... А сколько времени и сил отдавалось в последнее время на отработку именно таких задач... И последние тренировочные как-то ориентировали на это... Жаль... Не пригодилось...

Поляков: tavabar пишет: А сколько времени и сил отдавалось в последнее время на отработку именно таких задач... Не жалейте, это не прошло даром. Обработка символьных строк - это очень распространенный на практике класс задач. Так что в любом случае полезно. Если мы, конечно, не ограничиваем свои цели натаскиванием на сдачу ЕГЭ. :-)

tavabar: Поляков пишет: это не прошло даром Безусловно, это очень полезно и интересно, поэтому обидно, что ничего не спросили по этой теме, хотя и вроде бы намекали, что все будет... Ну, ладно, закрываем этот учебный год - и ЖДЕМ НОВЫЙ!

Поляков: tavabar пишет: закрываем этот учебный год - и ЖДЕМ НОВЫЙ! Полагаю, что там тоже будет нескучно. Особенно, если учесть, что еще не принято решение, будет компьютерный ЕГЭ или нет. :-)

oval: Поляков пишет: будет компьютерный ЕГЭ или нет еще и на Кумире

Ion: У меня появился вопрос. Как вы считаете - какую задачу вбросят в С4 во "вторую волну" 7 июля? Боюсь, что обработку данных строкового типа я не потяну: и времени, скорее всего, не хватит (я вообще всё делаю не слишком-то быстро: на всех ЕГЭ сидел-писАл до последней минуты, уходил последним), и научиться толком не успею. Но если вдруг... Стоит ли ориентироваться на тип задач от 28 мая? Сколько примерно по времени занимает их решение?

Поляков: Ion пишет: Как вы считаете - какую задачу вбросят в С4 во "вторую волну" 7 июля? Боюсь, что обработку данных строкового типа я не потяну: и времени, скорее всего, не хватит (я вообще всё делаю не слишком-то быстро: на всех ЕГЭ сидел-писАл до последней минуты, уходил последним), и научиться толком не успею. Но если вдруг... Стоит ли ориентироваться на тип задач от 28 мая? Сколько примерно по времени занимает их решение? Те, кто сейчас знают ответы на эти вопросы сейчас, связаны подпиской о неразглашении.

миши: мдаа, а с4 во вторую волну было целиком нацелино на обработку строковых данных..эх,а я уже раслабился:(...



полная версия страницы