Форум программистов, компьютерный форум CyberForum.ru

олимпиадная задачка про брак на заводе - C++

Восстановить пароль Регистрация
 
lancoma
0 / 0 / 0
Регистрация: 30.10.2012
Сообщений: 11
12.11.2012, 19:57     олимпиадная задачка про брак на заводе #1
Уважаемые программисты, вот еще одна задачка из серии олимпиадных. Может, она не такая сложная, но мне, как новичку в программировании, пока сложновато разобраться. Может, у вас будут какие-нибудь идеи, и вы мне подскажете?

На заводе статуэтки изготавливаются след. образом. Сначала они полируются, а потом покрываются лаком. Однако ни тот, ни другой процесс полностью не отрегулированы. В полировальной машине после каждых R отполированных статуэток одна не полируется, а подается дальше на облакировку. В свою очередь лакировочная машина после каждых L покрытых лаком статуэток одну лаком не покрывает. Т. е. получается три вида брака: совсем необработанная статуэтка; отполированная, но не покрытая лаком и неотполироанная, но покрытая лаком.

Нужно написать программу, кот. с введенными R, L и S(общее кол-во статуэток, с кот. идет работа) вычисляет, сколько будет получено полностью обработанных статуэток и сколько будет выпущено брака каждого вида. Известно, что последняя статуэтка перед интересующего нас кол-ва обработанных статуэток не будет ни отполирована, ни покрыта лаком.

Так, например, если R=3, L=5, S=17, то ситуация такова:

Из 17 статуэток полностью обработаны 12. Одна (12-ая) осталась полностью необработана. Одна (6) отполирована, но не покрыта лаком. Три статуэтки (4, 8 и 16) ни отполированы, ни покрыты лаком.

Пользователь вводит значения R, L, S. Известно, что 0<R<106, 0<L<106, 0<S<109.

На экран должны быть выведены 4 целых числа:
1. число статуэток, кот. и отполированы, и покрыты лаком;
2. число полностью необработанных статуэток;
3. число отполированных, но непокрытых лаком статуэток;
4. число статуэток, кот. не отполированы, но покрыты лаком.

Например, если пользователь вводит: 3 5 17;
Программа выводит: 12 1 1 3

Т. е. числа с пробелами между ними.

Если кто-то сможет мне помочь, кто чем сможет (может, кто-то уже код готовый сможет дать), не используйте, пожалуйста, ctime и return, т. к. мы их не используем.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2012, 19:57     олимпиадная задачка про брак на заводе
Посмотрите здесь:

C++ Задачка про массивы
Задачка про последовательность. C++
C++ Задачка про треугольник.
задачка про ящики C++
C++ Задачка про деревья на рекурсию
C++ "Олимпиадная задачка"
Задачка про спорт C++
C++ Олимпиадная задачка

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mgauk
 Аватар для Mgauk
27 / 27 / 1
Регистрация: 03.01.2011
Сообщений: 85
12.11.2012, 20:56     олимпиадная задачка про брак на заводе #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main() {
    int r,l,s,Ronly = 0,Lonly = 0,nothing = 0;
 
    std::cin >> r >> l >> s;
    
    for(int i = 1; i < s + 1; i++) {
        if(i % (r+1) == 0 && i % (l+1) == 0) {
            nothing++;
        } else if(i % (r+1) == 0) {
            Lonly++;
        } else if(i % (l+1) == 0) {
            Ronly++;
        }
    }
    
    std::cout << (s - nothing - Lonly - Ronly) << " " << nothing << " " << Ronly << " " << Lonly;
}
Yandex
Объявления
12.11.2012, 20:56     олимпиадная задачка про брак на заводе
Ответ Создать тему
Опции темы

Текущее время: 21:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru