В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
007sergey
007sergey
17.05.2020 21:23 •  Информатика

Университет ИТМО Сакт-петербурга (olymp.ifmo.ru) ежегодно проводит перечневую олимпиаду по информатике первого уровня. Задачи олимпиады напоминают задания ЕГЭ. Мы предлагаем Вам попробовать решить на пробном туре вариацию одной задачи с олимпиады СПБГУ ИТМО 2015 года. Пете подарили n гирь и чашечные весы. Каждая гиря весит ai грамм. Первым делом он разложил гири на чаши. При этом одна из чаш может быть пустой. Теперь он хочет выяснить, какой наименьшей разницы весов на чашах можно достичь, не более чем за одно перекладывание гирь. Одно перекладывание происходит следующим образом: Петя выбирает некоторую гирю, лежащую на одной чаше весов и перекладывает ее на другую чашу весов. Обратите внимание, что Петя не обязан сделать это перекладывание.

Формат ввода
В первой строке входного файла weight.in находится одно натуральное число n (1 ≤ n ≤ 50) — количество гирь. В каждой из следующих n строк находятся два натуральных числа ai, bi (1 ≤ ai ≤ 1000, 1 ≤ bi ≤ 2) — масса гири и номер чаши весов, на которой она находится.

Формат вывода
В выходной файл weight.out требуется вывести одно число — наименьшую разницу весов, которую можно достичь, сделав не более одного перекладывания гирь.

Показать ответ
Ответ:
ино7
ино7
23.10.2020 03:37

1011010

Объяснение:

Алгоритм перевода в двоичную систему:

1)

Переводим модуль числа в двоичную систему

Выполнить деление исходного числа на 2. Если результат деления больше или равен 2, продолжать делить его на 2 до тех пор, пока результат деления не станет равен 1

2). Выписать результат последнего деления и все остатки от деления в обратном порядке в одну строку.

3) выполняем инверсию всех битов

4) к результату добавляем 1

Получается:

1) делим -89 на 2 = 44, остаток 1 -  пишем -1, т. к. остаток 1

2) 44/2=22, без остатка, пишем 0

3) 22/2=11, без остатка, пишем 0

4) 11/2=5, остаток 1, пишем 1

5) 5/2=2, остаток 1, пишем 1

6) 2/2=1, без остатка, пишем 0

7) 1/2=0, остаток 1, пишем 1

Записываем в обратном порядке полученные 7 цифр 1011001

3) 0100110

4) 0100110

+               1

получаем 1011010

0,0(0 оценок)
Ответ:
Грихыч2002
Грихыч2002
15.08.2022 09:50

3. CREATE TABLE

нужны имя полей и тип их данных, например уникальный ID это id = PRIMARY KEY

текст = text , не пустой текст = TEXT NOT NULL ,

числа = REAL,INT время = DATE и т.д

6. SELECT, FROM, GROUP BY, WHERE, ORDER BY, HAVING

7. SELECT - указывает , что извлекать из таблицы, так же может содержать агрегирующие функции и функции времени такие как EXTRACT, DATE_TRUNC

8. FROM - указывает из какой таблицы извлекать, так же можно указать подзапрос

9. WHERE - указывает какие условия нужны для извлечения , которые указаны в SELECT, не может сравнивать агрегирующие функции , для этого есть HAVING, также может содержать подзапрос

10. GROUP BY - групирует по .., HAVING - то же самое , что WHERE , только для агрегирующих функций

11. ORDER BY - использует методы ASC(по возрастанию значений) пример - имя_поле ASC, или DESC(по убыванию значений) - имя_поля DESC

Объяснение:

Будут вопросы напиши в коменты(

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота