Чт, 21.02.2019, 15:47
Форум інформатиків України
Головна Реєстрація Вхід
Вітаю Вас, Гість · RSS
Вітання на форумі
Незнайомець
Вітаємо на форумі,
Незнайомцю!

 
зареєструйтесь
Перед реєстрацією обов’язково прочитайте:
Оновлення Учасники Пошук
Особисті повідомлення
Видавництво ’’Аспект’’ Видавництво

Модератор форуму: Ktara, Bandalak, НІКОЛЯ, volevikt  
Форум інформатиків » РОЗДІЛ I: ІНФОРМАТИКА, ПРОБЛЕМИ, ОБГОВОРЕННЯ, ВИРІШЕННЯ » 1.11 Змагання, конкурси, олімпіади » Учительська олімпіада!!! (Давайте проведемо віртолімпіаду між вчителями інформатики...)
Учительська олімпіада!!!
Sasyk Дата: Чт, 15.11.2007, 16:22 | Повідомлення № 1
знаток тестуючих систем
Повідомлень: 300
Нагороди: 0
Рейтинг: 9
Пропоную скинути по одній цікавій задачі для віртуальної учительської олімпіади!!!
Ці задачі скинути до кінця цього місяця...
На розвязання задач дається 1 місяць.
1-го січня опублікувати на форумі розвязки задач вчителями: користувач - задача 1, розвязок... задача n, розвязок. і т д.
А потім разом визначатимемо переможця...
Автор завдання повинен розвязок задачі відправити адміністратору, який в кінці конкурсу всі розвязки опублікує для перевірки...
Як вам така ідея???

Чув цікаву задачу
Є 9 монет. Одна з них бракована, але вигляд має такий як усі. Відомо, що при її виготовленні в середині утворився повітряний отвір і важить вона менше за всі інші. Написати програму, яка б за 2 зважування визначала дану монету.
Розпочав роботу раніше оголошеного терміну дистанційний курс навчання з розв'язування олімпадних задач для вчителів - учасників ( http://www.olymp.vinnica.ua/index_ua.php?lng=ua&cid=815 ) олімпіади. Теми курсу - свого роду "підказки" для розв'язку задач олімпіади з паралельними узагальненнями та доповненнями, що дозволить не лише розібратися з конкретною задачою, а й навчитися вирішувати цілий клас подібних задач. Сподіваюсь, це спровокує більш активну участь учителів в олімпіаді (всього 44 зареєстрованих, і то не всі є учителями :'( ). Для роботи з курсом:
1. Зареєструйтесь на http://disted.edu.vn.ua, зайдіть як зареєстрований учаксник
2. В меню КЛАСИ оберіть розділ ПОЗАКЛАСНА РОБОТА. ДИСТАНЦІЙНІ КУРСИ. Далі - МЕТОДИКА РІШЕННЯ ОЛІМПІАДНИХ ЗАДАЧ З ІНФОРМАТИКИ (курс для учителів).
Питання найкраще задавати на форумі олімпіади http://forum.olymp.vinnica.ua.
Можливі он-лайн консультації та відеотрансляції лекцій в реальному часі...були б бажаючі.
Прошу адміністрацію форума розіслати це повідомлення всім, як приватне. Зареєстровані учасники отримають його поштою.
Успіхів у навчанні!


[admin]Шановні форумчани!!!!!
Повідомлення, які не відповідають темі або несуть некорисний зміст будуть видалятись без попередження!!!
dpi Дата: Пн, 11.02.2008, 15:18 | Повідомлення № 31
Досвідчений вчитель
Повідомлень: 1438
Нагороди: 1
Рейтинг: 39
Quote (Varkan)
в залежності від результатів зважування залишаємо одну з трьох (тобто відкидаємо приблизно 1/3 монет)

Так оставляем или выбрасываем 1/3 ?
По тексту ниже видно, что отбрасываем 2/3

1 100:3=34 (заокр до більшого)
2 34:3=12 (заокр до більшого)
3 12:3=4 (заокр до більшого)

Это что аксиома, или проверенный алгоритм?
Мы же веса не знаем, тяжелее она или легче.
_____
dpi

Varkan Дата: Вт, 12.02.2008, 09:20 | Повідомлення № 32
Викладач ВУЗу
Повідомлень: 425
Нагороди: 0
Рейтинг: 6
Quote (dpi)
Так оставляем или выбрасываем 1/3 ?
По тексту ниже видно, что отбрасываем 2/3

так дійсно ми відкидаємо 2/3 (просто промахнувся по клавіші)

Quote (dpi)
1 100:3=34 (заокр до більшого)
2 34:3=12 (заокр до більшого)
3 12:3=4 (заокр до більшого)
Это что аксиома, или проверенный алгоритм?
Мы же веса не знаем, тяжелее она или легче.

показую на одному прикладі
100=33+33+34
на ваги кладемо тільки рівні кучки
в такому випадку якщо їх вага однакова то фальшива монета в тій кучі що не важиться, а якщо ні то в тій яка легша (або важча)
чому заокруглюємо до більшого?
нам потрібно знайти за скілки зважувань ми точно знайдемо фальшиву не враховуючи елемент ймовірності (якшо його врахувати то відповідь буде завжди 1), а тому вважаємо що фальшива монета завжди попаде в більшу кучку (не потрібно заокруглювати тоді коли число монет ділиться націло на 3)

dpi Дата: Пт, 15.02.2008, 12:26 | Повідомлення № 33
Досвідчений вчитель
Повідомлень: 1438
Нагороди: 1
Рейтинг: 39
Quote (Varkan)
так дійсно ми відкидаємо 2/3 (просто промахнувся по клавіші)

Но, если после 1 взвешивания весы не уравновешены, фальшивая среди 66-ти, не среди 34-х?

oleg_teacher Дата: Сб, 16.02.2008, 11:55 | Повідомлення № 34
Любитель дискутувати
Повідомлень: 177
Нагороди: 0
Рейтинг: 2
Quote (dpi)
Но, если после 1 взвешивания весы не уравновешены, фальшивая среди 66-ти

почему только среди 33!!!
dpi Дата: Сб, 16.02.2008, 12:06 | Повідомлення № 35
Досвідчений вчитель
Повідомлень: 1438
Нагороди: 1
Рейтинг: 39
На одни весы положили 33, на другие - 33, весы перекосились -> значит фальшивая среди них, среди 66.
oleg_teacher Дата: Сб, 16.02.2008, 13:34 | Повідомлення № 36
Любитель дискутувати
Повідомлень: 177
Нагороди: 0
Рейтинг: 2
Quote (dpi)
На одни весы положили 33, на другие - 33, весы перекосились -> значит фальшивая среди них, среди 66.

серед 33, в яку сторону перекосилися серед тих і фальшива
Bandalak Дата: Сб, 16.02.2008, 16:04 | Повідомлення № 37
Лідер форуму
Повідомлень: 6133
Нагороди: 43
Рейтинг: 285
Quote (oleg_teacher)
серед 33, в яку сторону перекосилися серед тих і фальшива

Ми ж не знаємо чи легша фальшива від нормальної, чи важча!

Добавлено (16.02.2008, 16:04)
---------------------------------------------

Quote (oleg_teacher)
Тут ы заокруглювати не тра!!!

З 12 монет можна знайти за 3 зважування!
KulAlex Дата: Нд, 17.02.2008, 08:36 | Повідомлення № 38
Знаток програмування
Повідомлень: 326
Нагороди: 6
Рейтинг: 19
Взагалі ця задача є досить важкою. А що стосується 12 монет, то за 3 зважування і визначається легша вона ви важча. Загального алгоритму розвязання цієї задачі не має, бо є винятки 12, 13, 27 і т.д.

А спробуйте таку задачу:
Із стандартного вхідного потоку вводиться натуральне число R (1<=R<=20000). Вивести у стандартний вихідний потік число k, яке є кількістю точок з цілочисловими координатами, що потрапляють у коло радіуса R з центром у початку координат.

Varkan Дата: Пн, 18.02.2008, 08:43 | Повідомлення № 39
Викладач ВУЗу
Повідомлень: 425
Нагороди: 0
Рейтинг: 6
Quote (Bandalak)
Ми ж не знаємо чи легша фальшива від нормальної, чи важча!

це має вказуватись в умові задачі

dpi Дата: Пн, 18.02.2008, 14:09 | Повідомлення № 40
Досвідчений вчитель
Повідомлень: 1438
Нагороди: 1
Рейтинг: 39
Quote (KulAlex)
Із стандартного вхідного потоку вводиться натуральне число R (1<=R<=20000). Вивести у стандартний вихідний потік число k, яке є кількістю точок з цілочисловими координатами, що потрапляють у коло радіуса R з центром у початку координат.

#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
int k=0,R,i,j,m;
float a=0.0,b=0.0, c;
cout << "Vvedi R - ";
cin >>R;
for (i=-R+1;i<R;i++)
for (j=-R+1;j<R;j++)
{
if (pow((i * i + j * j),.5) < R)
k++;
}
cout << "Otvet: "<<k<<endl;
system ("PAUSE");
return 0;
}

Добавлено (18.02.2008, 14:09)
---------------------------------------------

Quote (dpi)
float a=0.0,b=0.0, c;

эта строка вкралась випадково cry
её надо убрать.
KulAlex Дата: Пн, 18.02.2008, 14:44 | Повідомлення № 41
Знаток програмування
Повідомлень: 326
Нагороди: 6
Рейтинг: 19
Якщо вважати, що це розділ "Учительська олімпіада!!!", то Ви набрали 0 балів, у Вас лишній вивід на екран, а в задачі цього не проситься.

Quote (dpi)
cout << "Vvedi R - ";

Quote (dpi)
cout << "Otvet: "<<k<<endl;

Кілька зауважень:
1. Якщо точка лежить на колі, то вона задовільняє умові задачі, а у Вас це незроблено.
2. А спробуйте вказати r=20000, скільки це займе часу для Вашої задачі (я спробував, замучився чекати).

badm Дата: Пн, 18.02.2008, 17:21 | Повідомлення № 42
Знаток програмування
Повідомлень: 185
Нагороди: 0
Рейтинг: 3
можливо існує формульна залежності, або записати дані у файл а потім перенести у масив (але це 20 000 чисел?) при 20 000 в час ніяк не можна при такому алгоритмі вписатися.
P.S. Але це всього на всього задача районого рівня олімпіади на 15 балів у 2006 р.
Bandalak Дата: Вт, 19.02.2008, 01:43 | Повідомлення № 43
Лідер форуму
Повідомлень: 6133
Нагороди: 43
Рейтинг: 285
Quote (KulAlex)
це має вказуватись в умові задачі

Якраз в умові сказано, що це перед зважуванням Н Е В І Д О М О !!!
KulAlex Дата: Вт, 19.02.2008, 07:54 | Повідомлення № 44
Знаток програмування
Повідомлень: 326
Нагороди: 6
Рейтинг: 19
Quote (Bandalak)
Цитата (KulAlex )
це має вказуватись в умові задачі

Якраз в умові сказано, що це перед зважуванням Н Е В І Д О М О !!!

Це не мої слова, це слова Varkan.

Прикольно, глюки інета, вибачте що не по темі

Добавлено (19.02.2008, 07:54)
---------------------------------------------
Задачі на зважування, і там про 12 монет і про 13.
http://golovolomka.hobby.ru/weight.shtml

Varkan Дата: Вт, 19.02.2008, 10:45 | Повідомлення № 45
Викладач ВУЗу
Повідомлень: 425
Нагороди: 0
Рейтинг: 6
Quote (Bandalak)
Якраз в умові сказано, що це перед зважуванням Н Е В І Д О М О !!!

тоді додається ще одне контрольне зважування.
наприклад
маємо тих же 100 монет
33+33+34
якщо 33 по вазі = 33 то все зрозуміло
тепер 33 по вазі не=33 отже фальшива монета або в першій 33 або в другій 33 чи лекша чи важча невідомо.
значить 34 монети які залишилися всі не фальшиві. використовуємо їх як еталон
беремо з них будь які 33 монети і зважуємо з першими 33.
1. якщо вони рівні то фальшива в других 33 монетах. причому якшо перша 33 була важча за другу то фалива монета лекша, якщо перші 33 були легші за другі то фальшива монета важча.
2. якщо вони нерівні то фальшива монета в перших 33. і аналогічно знаходимо чи важча фальшива, чи вона легша.
а далі знаючи чи фальшива монета важча чи легша діємо по алгоритму.

контрольне зважування приміняємо у потрібний нам момент

Добавлено (19.02.2008, 10:45)
---------------------------------------------

Quote (KulAlex)
2. А спробуйте вказати r=20000, скільки це займе часу для Вашої задачі (я спробував, замучився чекати).

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

for x:=0 to r do
for y:=1 to r do
if sqrt(x*x+y*y)<=r then k:=k+1;

k:=4*k+1;

Форум інформатиків » РОЗДІЛ I: ІНФОРМАТИКА, ПРОБЛЕМИ, ОБГОВОРЕННЯ, ВИРІШЕННЯ » 1.11 Змагання, конкурси, олімпіади » Учительська олімпіада!!! (Давайте проведемо віртолімпіаду між вчителями інформатики...)
Пошук:


© Форум інформатиків України, 2007-2019.