Ольга1520
?>

В одной из кодировок КОИ‑8 каждый символ кодируется 8 битами. Даниил написал текст (в нем нет лишних пробелов): Латте, макиато, эспрессо, раф, американо, флэт, фраппе – виды кофейных напитков Ученик вычеркнул из списка название одного из видов кофейных . Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. После этого, он преобразовал текст в кодировку Unicode, где каждый символ кодируется 16 битами. При этом размер нового предложения в новой кодировке оказался на 61 байт больше, чем размер исходного предложения. Напишите в ответе вычеркнутый вид кофейного напитка.

Информатика

Ответы

Каныбек698
Package main;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
     public static BufferedReader READER = new BufferedReader(new InputStreamReader(System.in));
    public static void main(String[] args) throws IOException {
        int N = Integer.parseInt(READER.readLine());
        int[] array = new int[N];
        for(int i = 0; i < array.length; ++i)
            array[i] = Integer.parseInt(READER.readLine());
        System.out.println("Negative: " + Main.function(array));
    }
     public static boolean function(int[] array) {
        for(int number : array)
            if(number >= 0) return false;
        return true;
     }
}
ВалерийАндреевна1788
ответ: 359.

Решение. 
Начнём с простого наблюдения.

Лемма. Если на каком-то шаге все куски одинаковой массы m, то можно путём указанных операций сделать так, чтобы все куски стали массой m/2.
Доказательство. На первом шаге съедаем кусок массы m и разрезаем другой кусок массы m. Получится 8 кусков массы m и 2 куска массы m/2. Теперь 8 раз съедаем куски m/2 и распиливаем куски массы m.

Перейдём к собственно решению. Понятно, что Саша не мог съесть весь сыр. Поэтому, поскольку он съел целое число граммов сыра, он мог съесть не более, чем 360 - 1 = 359 граммов. Покажем, как он это мог сделать.

Пусть изначально головка сыра была разрезана так: 5 кусков по 512/9 г, 2 куска по 256/9 г, 1 кусок 128/9 г, 1 кусок 32/9 г, 1 кусок 8/9 г (легко проверить, что сумма всех масс равна 360).

Сначала съедим куски массой 8/9, 32/9, 128/9 и распилим три куска по 512/9 г. Останется 2 куска по 512/9 и 8 кусков по 256/9. Затем дважды съедим куски по 256/9 и разрежем оставшиеся куски по 512/9. После этого будет 10 кусков по 256/9.

Уменьшим размер каждого куска в 256 раз (воспользуемся 8 раз процессом, описанным в лемме). Тогда останутся 10 кусков массой 1/9 г. Съедаем один кусок и распиливаем любой оставшийся кусок. Несъеденная масса 9 * 1/9 = 1 г, значил, съел Саша 360 - 1 = 359 г сыра.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

В одной из кодировок КОИ‑8 каждый символ кодируется 8 битами. Даниил написал текст (в нем нет лишних пробелов): Латте, макиато, эспрессо, раф, американо, флэт, фраппе – виды кофейных напитков Ученик вычеркнул из списка название одного из видов кофейных . Заодно он вычеркнул ставшие лишними запятые и пробелы – два пробела не должны идти подряд. После этого, он преобразовал текст в кодировку Unicode, где каждый символ кодируется 16 битами. При этом размер нового предложения в новой кодировке оказался на 61 байт больше, чем размер исходного предложения. Напишите в ответе вычеркнутый вид кофейного напитка.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Наталья
turovvlad
artem032100
galtig83
myhauz
inessa12006
milanparipovic864
Бражинскене_Алексей
gabramova
LYuBOV
egamedicalbuh
kristina1989
Irina_Nikolai
федороа
vapebroshop