Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2008, 10:19   #31
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,091
По умолчанию

Цитата:
Сообщение от alexBlack Посмотреть сообщение
Отличная подборка (+1)
2) (Из серии, что, якобы все знают) Есть переменная целого типа, которая заведомо может содержать только 1 или 2. Написать код, который будет менять значение переменной на противоположное.
вероятно: i = 3 - i
pu4koff вне форума Ответить с цитированием
Старый 23.01.2008, 12:55   #32
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
Сообщение от rpy3uH Посмотреть сообщение
ну это все знают
Код:
  x:=x+y;
  y:=x-y;
  x:=x-y;
Да, но в первом действии возможно переполнение
Думаем дальше
пыщь
JTG вне форума Ответить с цитированием
Старый 23.01.2008, 13:03   #33
crazy horse
ios developer
Старожил
 
Аватар для crazy horse
 
Регистрация: 16.11.2007
Сообщений: 2,885
По умолчанию

Код:
if (x>y) then
{
 x=x-y;
 y=x+y;
 x=y-x;
}
 else
{
 //все наоборот
}
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!

Последний раз редактировалось crazy horse; 23.01.2008 в 13:09. Причина: сильно ТОРМОЖУ
crazy horse вне форума Ответить с цитированием
Старый 23.01.2008, 13:07   #34
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
Сообщение от crazy horse Посмотреть сообщение
Код:
if (x>y) then
{
 x=x-y;
 y=x+y;
 x=y-x;
}
 else
{
 //все наоборот
}
Общий смысл такой, ньюансы при y<0 или x<0
неа, снова думаем Подсказка - решение в 3 операции
пыщь
JTG вне форума Ответить с цитированием
Старый 23.01.2008, 13:07   #35
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от crazy horse Посмотреть сообщение
Код:
if (x>y) then
{
 x=x-y;
 y=x+y;
 x=y-x;
}
 else
{
 //все наоборот
}
Общий смысл такой, ньюансы при y<0 или x<0

Можно проще:
Код:
   x := x xor y;
   y := y xor x;
   x := x xor y;
alexBlack вне форума Ответить с цитированием
Старый 23.01.2008, 13:13   #36
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

ДА!

Можно даже вот так
Код:
x:=x xor y
y:=x xor y
x:=x xor y
пыщь
JTG вне форума Ответить с цитированием
Старый 23.01.2008, 19:14   #37
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

Цитата:
Сообщение от JTG Посмотреть сообщение
ДА!

Можно даже вот так
Код:
x:=x xor y
y:=x xor y
x:=x xor y
это лучший вариант решения задачи!
rpy3uH вне форума Ответить с цитированием
Старый 23.01.2008, 21:09   #38
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

половину задач решал давным давно.

Человеку, чтоб бегать по воде надо около 300 км/час. (Смотрел я ту передачу по Animal Planet)

насчёт монет. Должно быть известно, фальшивка легче, или тяжелее, иначе задачу не решить.
Допустим если она тяжелее. Используем оптимальную логику. (Напоминаю: это когда за каждую операцию отсеивается половина событий)
1) Итак делим на 2 кучи, по 6 монет в каждой, взвешиваем. Что тяжелее - там фальшивка.
2) Потом делим оставшиеся 6 монет на 2 кучи (по 3 в каждой), аналогично определяем 3 монеты, среди которых фальшивка.
3) теперь из этих трех понет берём две и взвешиваем, если весы уравновешены, то фальшивка третья монета, иначе фальшивка та, что тяжелее.

Все задачки легчайшие. Только вот про автобус не догнал((
zetrix вне форума Ответить с цитированием
Старый 24.01.2008, 06:37   #39
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

2 alexBlack:
Я загадал в уме 12 монет 6 раз
(1 2 3 4 5 6 7 8 9 10 11 12)
Каждый раз загадывал номер фальшивой монеты и ее вес. Эти фальшивки сохранил в текстовый файл: Фальшивые.rar. Файл запоролил.
Называй номера монет которые надо взвешивать, я скажу какая часть перевесила.
Пример:
alexBlack:
1) 1 2 3 4 ? 5 6 7 8
2) 1 2 3 4 ? 5 6 7 8
Sibedir:
1) 1 2 3 4 / 5 6 7 8 (Это значит, что 1234 тяжелее чем 5678)
2) 1 2 3 4 = 5 6 7 8
alexBlack:
1) 5 6 ? 7 8
2) 9 10 ? 11 12
Sibedir:
1) 5 6 \ 7 8
2) 9 10 / 11 12
alexBlack:
1) 5 ? 6
2) 11 ? 12
Sibedir:
1) 5 / 6
2) 11 = 12
alexBlack:
1) 5 ? 7
2) 9 ? 11
Sibedir:
1) 5 = 7
2) 9 = 11
alexBlack:
Ответ:
1) 6Л (В первом наборе монета номер 6 легче остальных)
2) 10Т
Sibedir:
1) Да
2) Да

Тока тебе надо сделать это с 6-ю вариантами. В конце дам пароль на файл, проверишь.
Ну как согласен?

Последний раз редактировалось Sibedir; 24.01.2008 в 07:09.
Sibedir вне форума Ответить с цитированием
Старый 24.01.2008, 08:16   #40
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от zetrix Посмотреть сообщение

насчёт монет. Должно быть известно, фальшивка легче, или тяжелее, иначе задачу не решить.
Допустим если она тяжелее. Используем оптимальную логику. (Напоминаю: это когда за каждую операцию отсеивается половина событий)
1) Итак делим на 2 кучи, по 6 монет в каждой, взвешиваем. Что тяжелее - там фальшивка.
2) Потом делим оставшиеся 6 монет на 2 кучи (по 3 в каждой), аналогично определяем 3 монеты, среди которых фальшивка.
3) теперь из этих трех понет берём две и взвешиваем, если весы уравновешены, то фальшивка третья монета, иначе фальшивка та, что тяжелее.

Все задачки легчайшие. ((
Подобные варианты (если то, то это) не проходят. Чтобы исключить последующие высказывания о том, что решить нельзя, даю подсказку.
Любое взвешивание - три исхода (в равновесии, отклонились в лево, отклонились в право) обозначим как 0, 1, 2. Для трех взвешиваний 27 вариантов:

000
001
002
010
...
222

Это гораздо больше 12 монет. Вот такая подсказка. Думайте.
alexBlack вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите темы для сайтов, ничего в голову не лезет Gorychev Свободное общение 2 02.04.2008 12:32
Всю голову сломала, но формула не получается. Помогите! Аленка Microsoft Office Excel 1 07.02.2008 12:56
Задача с матрицей. Ломаю голову уже неделю Damokl Помощь студентам 6 19.12.2007 03:20