Форум Всеукраїнської інтернет-олімпіади NetOI


На форумі обговорюються лише питання, пов'язані з олімпіадою

Ви не зайшли.

#1 2011-01-13 10:24:43

LVV
Олімпієць
Звідки: Олешки
Зареєстрований: 2010-11-19
Повідомлень: 338
Вебсайт

Загальні питання

Чому не працює статистика третього туру. Відправив завдання, а там прочерки... sad
І взагалі, у всіх пусто. Хіба таке може бути?


Вік живи - вік навчайся.

Поза форумом

 

#2 2011-01-13 12:29:48

Жюри_Непомнящий
Журі
Зареєстрований: 2005-11-03
Повідомлень: 107

Re: Загальні питання

Все працює. Очистіть кеш браузера.

Поза форумом

 

#3 2011-01-13 13:01:57

LVV
Олімпієць
Звідки: Олешки
Зареєстрований: 2010-11-19
Повідомлень: 338
Вебсайт

Re: Загальні питання

Вибачте. Дійсно, все працює. Мабуть з невеличкою затримкою, бо я не відразу помітив свою відправлену задачу.
Дивно, усьго 8 задач здано на 13 годину 13.01.2011 smile


Вік живи - вік навчайся.

Поза форумом

 

#4 2011-01-16 08:57:46

zdivan
Новий користувач
Зареєстрований: 2009-11-09
Повідомлень: 16

Re: Загальні питання

Хм...аналогічно
Відправив А, а в статистиці вона відсутня, хоча пише що прийняло

Поза форумом

 

#5 2011-01-18 09:44:01

LVV
Олімпієць
Звідки: Олешки
Зареєстрований: 2010-11-19
Повідомлень: 338
Вебсайт

Re: Загальні питання

Да СТАТИСТИКА ТРЕТЬЕГО ТУРА НЕ РАБОТАЕТ!!! Четыре дня, как отправил задание, а там пусто!!!

Відредаговано LVV (2011-01-18 10:36:25)


Вік живи - вік навчайся.

Поза форумом

 

#6 2011-01-19 14:11:56

jurij
Новий користувач
Зареєстрований: 2009-01-23
Повідомлень: 40

Re: Загальні питання

Жюри_Непомнящий написав:

Все працює. Очистіть кеш браузера.

К сожалению не работает статистика. Пробовал очистить кеш, ничего не меняется. Как быть, отправлять решения повторно?

Поза форумом

 

#7 2011-01-19 14:57:00

Жюри_Непомнящий
Журі
Зареєстрований: 2005-11-03
Повідомлень: 107

Re: Загальні питання

Отправьте задачи повторно. Если задача была принята ранее, получите сообщение, что повторное решение не принимается.

Поза форумом

 

#8 2011-01-21 04:48:50

LVV
Олімпієць
Звідки: Олешки
Зареєстрований: 2010-11-19
Повідомлень: 338
Вебсайт

Re: Загальні питання

Вроде бы статистика зработала...  Только активность что-то маловата. Интересно, это всегда так?


Вік живи - вік навчайся.

Поза форумом

 

#9 2011-01-24 21:05:43

shoa169
Новий користувач
Зареєстрований: 2010-11-10
Повідомлень: 56

Re: Загальні питання

Что-то не отправляются задачи на проверку. Даже такая вот "реализация" для Division:

Код:

var
  inp,out:text;
  i,A,B,k:integer;
  prime:array[1..100] of integer;
begin
  assign(inp,'input.txt'); reset(inp);
  Read(inp,A,B,k);
  for i:=1 to k do Read(inp,prime[i]);
  close(inp);
  assign(out,'output.txt'); rewrite(out);
  WriteLn(out,7);                                            {Пробовал и  Write(out,7); }
  close(out);
end.

Выдает "FAILED (Bad Data)"
Это почему еще???
Может не работает только онлайн проверка, а сдавать можно???

-------------
to programist: Спасибо!!!

Відредаговано shoa169 (2011-01-24 21:28:29)

Поза форумом

 

#10 2011-01-24 21:19:52

programist
Новий користувач
Зареєстрований: 2010-11-16
Повідомлень: 19

Re: Загальні питання

shoa169 написав:

Что-то не отправляются задачи на проверку. Даже такая вот "реализация" для Division:

Выдает "FAILED (Bad Data)"
Это почему еще???
Может не работает только онлайн проверка, а сдавать можно???

Не треба, щоб програма читала вхідні дані з файла.

Відредаговано programist (2011-01-24 21:20:40)

Поза форумом

 

#11 2011-01-25 13:07:16

LeonID
Новий користувач
Зареєстрований: 2008-12-09
Повідомлень: 160

Re: Загальні питання

Статистика 3-го туру на 14 годину 25 січня.
Задача Division - 93 варіанти розвязків;
Задача Prize - 105 варіантів розвязків;
Задача Column - 109 варіантів розвязків;
Задача Towns - 67 варіантів розвязків;
Задача Іnstigator - 45 варіантів розвязків.

Поза форумом

 

#12 2011-01-25 14:29:57

programist
Новий користувач
Зареєстрований: 2010-11-16
Повідомлень: 19

Re: Загальні питання

Якщо вже закінчився III тур, то зможе хтось показати розв'язки задач у Паскалі?

Поза форумом

 

#13 2011-01-25 14:47:33

Dim_ov
Новий користувач
Зареєстрований: 2009-11-29
Повідомлень: 281
Вебсайт

Re: Загальні питання

programist написав:

Якщо вже закінчився III тур, то зможе хтось показати розв'язки задач у Паскалі?

Поки немає результатів ніхто ж не знає напевно, наскільки його рішення правильне і ефективне. Почекайте результатів

Поза форумом

 

#14 2011-01-25 14:50:45

MItornaDOS
Новий користувач
Звідки: Вінницька область
Зареєстрований: 2007-11-08
Повідомлень: 74

Re: Загальні питання

Ну... я можу, правда хто його знає, скільки вони балів наберуть?
Взагалі-то ідеї у мене були такі:


Division
Знаходжу різницю чисел Lo i Hi
для всіх простих чисел віднімаю від результату кількість чисел, які діляться на дане просте число і знаходяться в межах від Lo до Hi.
для всіх пар простих чисел (нехай це буде A, B) додаю до результату кількість чисел, які діляться на A і на B одночасно (тобто на A*B).
для всіх трійок простих чисел (нехай це буде A, B, C) віднімаю від результату кількість чисел, які діляться на A і на B, і на C одночасно (тобто на A*B*C).
Ну... і т.д.

Причому якщо чисел між Lo і Hi, які діляться на деяких (a1,a2,a3.......an) простих чисел, уже немає, то сенсу перевярти для (a1,a2,a3.......,an, an+1) теж немає.
Ну... якщо це все правильно реалізувати, то думаю, балів 40 з 60 буде:) побачимо


Prize
Тут тупо динаміка...
головне - правильно загнати в квадратну матрицю і все...
тут говорити, думаю, немає про що:)


Column
У мене такий розв'язок, що його описувати на форумі краще не треба smile
Я в реалі ще якось можу його пояснити, але тут... пальці відваляться поки напишу smile

Instigator
я думаю, що треба робити так:
для всіх пар вершин перевірити чи їх можна сполучити відрізком так, щоб цей відрізок повністю належав многокутнику
а потім пошуком в ширину від першої вершини знаходимо мін. час горіння до кожної з вершин, виводимо час горіння тої вершини, до якої вогонь буде діставатись найдовше.

Towns
*DONT_KNOW*

Поза форумом

 

#15 2011-01-25 15:55:55

programist
Новий користувач
Зареєстрований: 2010-11-16
Повідомлень: 19

Re: Загальні питання

MItornaDOS написав:

Взагалі-то ідеї у мене були такі:

Я взагалі-то хотів побачити код програм.

Відредаговано programist (2011-01-25 15:56:11)

Поза форумом

 

#16 2011-01-25 16:34:03

Bk
Новий користувач
Зареєстрований: 2010-11-02
Повідомлень: 21

Re: Загальні питання

>
Towns
*DONT_KNOW*

>угу..

А коли буде проходити четвертий тур і хто до нього проходить?

Поза форумом

 

#17 2011-01-25 16:35:15

Bk
Новий користувач
Зареєстрований: 2010-11-02
Повідомлень: 21

Re: Загальні питання

>
Column
У мене такий розв'язок, що його описувати на форумі краще не треба
Я в реалі ще якось можу його пояснити, але тут... пальці відваляться поки напишу

> Чому? Це одна з найлегших задач

Поза форумом

 

#18 2011-01-25 16:42:31

programist
Новий користувач
Зареєстрований: 2010-11-16
Повідомлень: 19

Re: Загальні питання

Код:

program column;

{$mode delphi}

uses
  SysUtils;

var
 n : integer;
 i, j, k, x : int64;
 arr : array[0..10000] of integer;
 key : boolean;
begin
  read(n);
  i:=1;
  k:=0;
  x:=0;
  key:=true;
  while (i<=n) do begin
    read(arr[i]);
    if arr[i]=0 then begin
     if key=true then x:=x+1;
     k:=k+1;
    end
    else key:=false;
    inc(i);
  end;
  if key=true then writeln(0)
  else begin
    i:=n;
    key:=true;
    while (key=true) and (i>=1) do
     if arr[i]=0 then begin
      j:=i;
      key:=false;
     end
     else if i=1 then j:=1
     else i:=i-1;
    if (k-x)<(j-k) then writeln(k-x)
    else writeln(j-k)

  end;
end.

Поза форумом

 

#19 2011-01-25 16:55:50

Dim_ov
Новий користувач
Зареєстрований: 2009-11-29
Повідомлень: 281
Вебсайт

Re: Загальні питання

Не дуже зрозумів ідею попереднього розв'язку, ось мій

Код:

#include<iostream>

using namespace std;

int main()
{
    bool current;
    int n,res,i,S1;
    cin>>n;
    for(i=0,res=0,S1=0;i<n;i++)
    {
        cin>>current;
        if(current)S1++;
        else if(S1>0)
        {
            res++;
            S1--;
        }
    }
    cout<<res;
    return 0;
}

Якщо зустрілась одиниця, збільшую "рахувалку", якщо нуль - зменшую "рахувалку" і збільшую результат

Відредаговано Dim_ov (2011-01-25 18:34:07)

Поза форумом

 

#20 2011-01-25 17:11:02

MItornaDOS
Новий користувач
Звідки: Вінницька область
Зареєстрований: 2007-11-08
Повідомлень: 74

Re: Загальні питання

Мої розв'язки виставлю пізніше

Dim_ov написав:

Не дуже зрозумів ідею попереднього розв'язку, ось мій

Код:

#include<cstdio>

using namespace std;

int main()
{
    bool current;
    int n,res,i,S1;
    cin>>n;
    for(i=0,res=0,S1=0;i<n;i++)
    {
        cin>>current;
        if(current)S1++;
        else if(S1>0)
        {
            res++;
            S1--;
        }
    }
    cout<<res;
    return 0;
}

Якщо зустрілась одиниця, збільшую "рахувалку", якщо нуль - зменшую "рахувалку" і збільшую результат

Це з II етапу Вінницької олімпіади стирино, нецікаво читати авторський розв'язок тим більше з таким коротким поясненням smile
Відповідати на моє повідомлення не потрібно.

А коли буде проходити четвертий тур і хто до нього проходить?

13.02.2011, там же написано.
Хто - до результатів 3-го туру рано ще говорити. Хоча... по підсумкам перших двох турів вже можна про декого догадуватись smile

> Чому? Це одна з найлегших задач

Ну... у мене розв'язок не такий простий, як авторський (див. вище)
Напевно він недостатньо спрощений, тому і громіздкий.

Відредаговано MItornaDOS (2011-01-25 17:11:32)

Поза форумом

 

#21 2011-01-25 17:12:37

LeonID
Новий користувач
Зареєстрований: 2008-12-09
Повідомлень: 160

Re: Загальні питання

programist написав:

Код:

program column;

{$mode delphi}

uses
  SysUtils;

var
 n : integer;
 i, j, k, x : int64;
 arr : array[0..10000] of integer;
 key : boolean;
begin
  read(n);
  i:=1;
  k:=0;
  x:=0;
  key:=true;
  while (i<=n) do begin
    read(arr[i]);
    if arr[i]=0 then begin
     if key=true then x:=x+1;
     k:=k+1;
    end
    else key:=false;
    inc(i);
  end;
  if key=true then writeln(0)
  else begin
    i:=n;
    key:=true;
    while (key=true) and (i>=1) do
     if arr[i]=0 then begin
      j:=i;
      key:=false;
     end
     else if i=1 then j:=1
     else i:=i-1;
    if (k-x)<(j-k) then writeln(k-x)
    else writeln(j-k)

  end;
end.

Ця програма на тесті 0 0 1 0 0 1 1 1 1 1 0 0 видає відповідь - 4, але правильна - 3.(одиничка стає між одиничками а два нулики в лівий край)

Поза форумом

 

#22 2011-01-25 17:21:23

LeonID
Новий користувач
Зареєстрований: 2008-12-09
Повідомлень: 160

Re: Загальні питання

В мене інший алгоритм до задачі Column. Проходячи масив рахую нулики як від'ємні числа, а одинички як додатні. Наприклад 000111001 буде таким -3 3 -2 1. Потім для кожного відємного числа рахую кількість додатніх зліва і відємних справа, для додатніх навпаки. Результатом буде найменша сума. Час лінійний. Код покажу потім.

Поза форумом

 

#23 2011-01-25 17:29:10

MItornaDOS
Новий користувач
Звідки: Вінницька область
Зареєстрований: 2007-11-08
Повідомлень: 74

Re: Загальні питання

Наприклад 000111001 буде таким -3 3 -2 1. Потім для кожного відємного числа рахую кількість додатніх зліва і відємних справа, для додатніх навпаки

О, щось схоже на мою ідею, однак у мене реалізація інша.
Думаю, що тупіша - багато часу на неї не тратив, всерівно у мене також лінійний час.

Поза форумом

 

#24 2011-01-25 17:44:22

Dim_ov
Новий користувач
Зареєстрований: 2009-11-29
Повідомлень: 281
Вебсайт

Re: Загальні питання

MItornaDOS написав:

Це з II етапу Вінницької олімпіади стирино, нецікаво читати авторський розв'язок тим більше з таким коротким поясненням smile
Відповідати на моє повідомлення не потрібно.

Усе ж відповім smile
Я, на жаль, знаходжусь на Полтавщині, а не на Вінниччині. І хочете - вірте, хочете - ні, але розв'язок придумав сам.
Способів порахувати кількість пар 1-0 небагато, тож цілком можливо, що рішення може співпасти з авторським.
Щодо короткого пояснення. Не знаю, як можна пояснити довше smile. Вище вже писав - просто порахувати к-ть пар 1-0 в послідовності(хтось із ний обійде іншого і стане в протилежний край строю)

Відредаговано Dim_ov (2011-01-25 17:44:57)

Поза форумом

 

#25 2011-01-25 18:25:03

MItornaDOS
Новий користувач
Звідки: Вінницька область
Зареєстрований: 2007-11-08
Повідомлень: 74

Re: Загальні питання

Dim_ov написав:

Усе ж відповім smile
....... І хочете - вірте, хочете - ні, але розв'язок придумав сам.

Тому й не потрібно було:)


ось авторський:

Код:

#include<iostream>
#include<cstdio>
using namespace std;

int main(){
//    freopen("data.txt","r",stdin);
//    freopen("ans.txt","w",stdout);
    int n,k;
    cin>>n;
    int s1=0,s=0;
    for(int i=0; i<n; i++){
        cin>>k;
        if(k) s1++;
        if(!k && s1){
            s1--;
            s++;
        }
    }
    cout<<s;
}

навість змінна s1 співпадає big_smile


Ну... що ж, цікаво було б прочитати Вашу ідею прописом... детальніше, будь ласка

Поза форумом

 

Нижній колонтитул

Powered by Likt
© Copyright 2002–2009 Likt