Фари228
20.11.2022 01:00

B. Печеньки Ограничение времени 1 секунда
Ограничение памяти 10.0 Мб
Ввод стандартный ввод
Вывод стандартный вывод
На столе стоят три чашки с печеньками. В левой вазе лежат X печенек, в средней вазе лежат Y печенек, в правой вазе лежат Z печенек. Ринат съедает одну печеньку из левой чашки, затем – одну печеньку из средней чашки, затем из правой, средней, левой, средней, правой, средней и т. д. (слева направо, затем налево, опять направо и т.д.). Если Ринат хочет взять печеньку из какой-то чашки, а печенек там нет, он расстраивается и уходит. Определите, сколько печенек съест Ринат.
Формат ввода
Программа получает на вход три целых неотрицательных числа X, Y, Z – количество печенек в левой, средней, правой чашке.
3
3
3
Формат вывода
Выведите количество печенек, которые съест Ринат.
7
решить

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
учеба6358
03.09.2020 05:48
Using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

internal static class Program
{
    private const string glasnye_ = "aeiouy";
    private const string soglasnye_ = "bcdfghjklmnpqrstvwxz";

    private static void Main()
    {
        try
        {
            Console.WriteLine("Введите строку слов (любые символы будут считаться разделителями)");
            var s = Console.ReadLine();
            Console.WriteLine($"Гласных больше чем согласных:\n {Task1(s).Aggregate("", (current, t) => current + t.ToUpper() + " ")}");
            Console.WriteLine();
            Console.WriteLine($"Гласных больше чем согласных:\n {Task1Regex(s).Aggregate("", (current, t) => current + t.ToUpper() + " ")}");
            Console.ReadLine();
        }
        catch(Exception e)
        {
            Console.WriteLine(e);
            Console.ReadLine();
        }
    }

    private static IEnumerable<string> Task1(string s)
    {
        Console.ForegroundColor = ConsoleColor.Cyan;
        Console.WriteLine("Без регулярных выражений");

        var words = s.Split(new[] {' ', '-', ',', '.', '*', ':', ';', '_'}, StringSplitOptions.RemoveEmptyEntries).ToList();

        var sb = new StringBuilder();
        for (var i = 0; i < words.Count; i++)
            sb.AppendLine($"Слово[{i}] = {words[i].ToUpper()}");

        Console.Write(sb.ToString());

        var result = new List<string>();

        foreach (var word in words)
        {
            var k = 0;
            foreach (var c in word.ToLower().ToCharArray())
            {
                k += glasnye_.Contains(c) ? 1 : 0;
                k -= soglasnye_.Contains(c) ? 1 : 0;
            }

            if (k > 0)
                result.Add(word);
        }

        return result;
    }

    private static IEnumerable<string> Task1Regex(string s)
    {
        Console.ForegroundColor = ConsoleColor.Green;
        Console.WriteLine("С регулярными выражениями");

        var ms = Regex.Matches(s, @"[A-z]+", RegexOptions.IgnoreCase);

        var sb = new StringBuilder();
        for (var i = 0; i < ms.Count; i++)
            sb.AppendLine($"Слово[{i}] = {ms[i].Value.ToUpper()}");

        Console.Write(sb.ToString());

        var result = new List<string>();
        for (var i = 0; i < ms.Count; i++)
        {
            var v = ms[i].Value;
            var k = Regex.Matches(v, $"[{glasnye_}]", RegexOptions.IgnoreCase).Count;
            k -= Regex.Matches(v, $"[{soglasnye_}]", RegexOptions.IgnoreCase).Count;
            if (k > 0)
                result.Add(v);
        }

        return result;
    }
}
0,0(0 оценок)
Ответ:
данаасус
04.12.2022 08:56

Ну сама считай)

Идут числа которые делятся на 3

3

6

9

12

15

18

21

24

И каждые 3 часа она делится на 2 т.е.

3=2 (изначально)

Потом 6=6 (т.к. 1 амеба делится на 2, получается что 2+2+2=6)

9=6 (сейчас 6 таких амёб поделились ещё на 2, т.е 18) и так далее

12= 18

15=54

18=162

21=486

24=1458

Т.е каждый раз просто плюсуешь три раза, потому что 1 амёба делится на 2 образуя 3 амёб, поэтому и плюсовать на одно и тоже число надо 3 раза

Если не поняла то смотри для примера возьму опять число 18:

18+18+18=54

Если решать долгим то сама всё поймешь:

(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)+(1+2)=54 (Можешь просто посчитать что тут 18 скобочек (1+2))

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