Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
dimakozyr
158 / 25 / 3
Регистрация: 17.08.2013
Сообщений: 479
#1

За два взвешивания определить которая из пяти монет имеет вес, отличный от остальных.

17.11.2013, 23:32. Просмотров 1324. Ответов 14
Метки нет (Все метки)

Понимаю, что оффтоп, но задача для острого программерского ума.
Олимпиадная задача для 7 класса, условие:

Есть 5 монет. 4 из них по 5 грамм, пятая - неизвестно (либо больше, либо меньше пяти - это неизвестно).
Есть грузик на 5 грамм. За 2 взвешивания определить, где монета, которая НЕ 5 грамм.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2013, 23:32
Ответы с готовыми решениями:

За 3 взвешивания на весах найти из 25 монет фальшивую
Доброго всем здравия, на этом форуме была задача, за 3 взвешивания на весах...

Среди 13 монет есть одна отличающаяся по весу, за 3 взвешивания на чашечных весах найти ее
Известно, что среди 13 монет есть одна отличающаяся по весу (фальшивая -...

Определить максимум из пяти чисел.Найти произведение 4-ех остальных
Умножает максимум вместе с остальными числами, а умножать не должен как...

Поменять местами строчку которая имеет максимальный елемент со строкой которая имеет минимальный елемент.Вывести обе матрицы на екран!!
Данно квадратную матрицу А розмера NxN (N<=10), которая состоить с...

Определить, имеет ли уравнение два одинаковых корня
Даны три целых числа A,B,C,A<>0, заданных датчиком случайных числе из диапазона...

14
n0n4m3r
25 / 25 / 15
Регистрация: 12.10.2013
Сообщений: 183
17.11.2013, 23:40 #2
3 + 2+гиря.

Что перевесит - перевзвесить, если равно, то монета не 5гр там, где снятая кучка.
0
dimakozyr
158 / 25 / 3
Регистрация: 17.08.2013
Сообщений: 479
17.11.2013, 23:42  [ТС] #3
Сложность в том, что неизвестно - легче неизвестная монета, или тяжелее
0
zewer
1650 / 1270 / 155
Регистрация: 07.01.2011
Сообщений: 7,984
Завершенные тесты: 1
17.11.2013, 23:45 #4
Цитата Сообщение от n0n4m3r Посмотреть сообщение
3 + 2+гиря.

Что перевесит - перевзвесить, если равно, то монета не 5гр там, где снятая кучка.

Не по теме:

Вы куратор вовсиркла?

0
Zazy
45 / 45 / 23
Регистрация: 14.04.2013
Сообщений: 186
18.11.2013, 00:25 #5
2 2 1+гиря ,все сравнит ,найти группу отличающуюся от двух остальных ,сравнит каждый элемент с гирей

Добавлено через 7 минут
Поправка не с каждым а с любым элементом из этой пары
0
dimakozyr
158 / 25 / 3
Регистрация: 17.08.2013
Сообщений: 479
18.11.2013, 00:29  [ТС] #6
Цитата Сообщение от Zazy Посмотреть сообщение
2 2 1+гиря ,все сравнит ,найти группу отличающуюся от двух остальных ,сравнит каждый элемент с гирей
Вот:
Цитата Сообщение от dimakozyr Посмотреть сообщение
За 2 взвешивания
0
vua72
417 / 417 / 166
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.11.2013, 00:54 #7
х-м
0
Max Dark
шКодер самоучка
1945 / 1738 / 857
Регистрация: 09.10.2013
Сообщений: 3,846
Записей в блоге: 6
Завершенные тесты: 2
18.11.2013, 01:30 #8
если задача сказать ГДЕ монета, а не КОТОРАЯ из монет, то можно сказать и без взвешиваний - она в куче из этих 5ти монет)
0
vua72
417 / 417 / 166
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.11.2013, 01:40 #9
Цитата Сообщение от Cra3y Посмотреть сообщение
если задача сказать ГДЕ монета, а не КОТОРАЯ из монет, то можно сказать и без взвешиваний - она в куче из этих 5ти монет)
Вы правы, нужна точная формулировка задачи.
0
Zazy
45 / 45 / 23
Регистрация: 14.04.2013
Сообщений: 186
18.11.2013, 01:53 #10
Так же 2 2 1+гиря, сравниваем 1+гиря с одной парой, если одинаковы то монетка в другой паре тогда сравниваем гирю с любой монеткой другой пары и находим искомую. Если вес разный тогда :
пример 1-гиря и 2-3 если правая часть тяжелее тогда меня местами монетку 1 с монеткой 2(или 3),2-гиря и 1-3
если осталось так же правая часть тяжелее то искомая монетка 3
если левая часть перевешивает то искомая монетка попадает на место 1
0
Jupiter
Каратель
Эксперт С++
6569 / 3990 / 400
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
18.11.2013, 02:13 #11
Цитата Сообщение от Zazy Посмотреть сообщение
тогда меня местами монетку 1 с монеткой 2(или 3),2-гиря и 1-3
если осталось так же правая часть тяжелее то искомая монетка 3
если левая часть перевешивает то искомая монетка попадает на место 1
это уже 3-е сравнение, нет?
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
18.11.2013, 02:30 #12
Цитата Сообщение от Jupiter Посмотреть сообщение
это уже 3-е сравнение, нет?
Взвешивания два.
Цитата Сообщение от Zazy Посмотреть сообщение
1-гиря и 2-3 если правая часть тяжелее тогда меня местами монетку 1 с монеткой 2(или 3),2-гиря и 1-3
Цитата Сообщение от dimakozyr Посмотреть сообщение
За 2 взвешивания определить,
0
I.M.
567 / 550 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
18.11.2013, 03:16 #13
Цитата Сообщение от Zazy Посмотреть сообщение
Так же 2 2 1+гиря, сравниваем 1+гиря с одной парой, если одинаковы то монетка в другой паре тогда сравниваем гирю с любой монеткой другой пары и находим искомую. Если вес разный тогда :
пример 1-гиря и 2-3 если правая часть тяжелее тогда меня местами монетку 1 с монеткой 2(или 3),2-гиря и 1-3
если осталось так же правая часть тяжелее то искомая монетка 3
если левая часть перевешивает то искомая монетка попадает на место 1
есть изъян в этой логике
последняя фраза: "если левая часть перевешивает то искомая монетка попадает на место 1"
если после того, как мы поменяли монетку 1 с монеткой 2, левая сторона стала перевешивать, это может значить:
а) монетка 2 - искомая. И ее вес больше 5 грамм
б) монетка 1 - искомая. И ее вес меньше 5 грамм
0
Croessmah
++Ͻ
14544 / 8303 / 1560
Регистрация: 27.09.2012
Сообщений: 20,371
Записей в блоге: 3
Завершенные тесты: 1
18.11.2013, 04:27 #14
Цитата Сообщение от dimakozyr Посмотреть сообщение
Сложность в том, что неизвестно - легче неизвестная монета, или тяжелее
зато известно что она отличается по весу!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <iostream>
 
 
int foo ( int x [ 6 ] ) {
    int rez1 = ( x [ 1 ] + x [ 2 ] ) - ( x [ 0 ] + x [ 3 ] ) ; //1
    int rez2 ;
    if ( rez1 == 0 ) {
        rez2 = ( x [ 1 ] + x [ 4 ] ) - ( x [ 0 ] + x [ 3 ] ) ; //2
        if ( rez2 == 0 ) {
            return 5 ;
        } else {
            return 4 ;
        }
    } else {
        rez2 = ( x [ 2 ] + x [ 3 ] ) - ( x [ 0 ] + x [ 5 ] ) ; //2
        if ( rez2 == 0 ) {
            return 1;
        } else {
            if ( rez1 == rez2 ) {
                return 2 ;
            } else {
                return 3 ;
            }
        }
    }
    return 0 ;
}
 
 
 
int main(){
    int x [ 6 ] = { 5 , 5 , 5 , 2 , 5 , 5 } ;
    std :: cout << foo ( x ) << std :: endl ;
}
x [ 0 ] - всегда гиря!
Цифрами обозначены взвешивания.
Функция foo возвращает номер фальшивой монеты ( индекс в массиве )
1
Kuzia domovenok
2264 / 2033 / 459
Регистрация: 25.03.2012
Сообщений: 7,200
Записей в блоге: 1
18.11.2013, 05:11 #15
Cra3y, а мне кажется, задача не на то, чтоб умничать и выпендриваться
0
18.11.2013, 05:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2013, 05:11

Определить, на каком дне рождения вес съеденной пищи превысит собственный вес Винни-Пуха
На каждом следующем дне рождения Винни-Пух съедает столько же пищи, сколько на...

Определить, на каком дне рождения вес съеденной пищи превысит собственный вес Винни – Пуха
На каждом следующем дне рождения Винни – Пух съедает столько же пищи, сколько...

Определить, на каком дне рождения вес съеденной пищи превысит собственный вес Винни-Пуха
На каждом следующем дне рождения Винни-Пух съедает столько же пищи, сколько на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru