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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.60
Тина_Ливингстон
0 / 0 / 0
Регистрация: 01.11.2011
Сообщений: 59
#1

Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». - C++

09.11.2011, 22:25. Просмотров 2447. Ответов 5
Метки нет (Все метки)

Первая задача

«Быки и коровы»


Вам, наверное, известна логическая игра «быки и коровы», но, тем не менее, пояс-ним ее правила. Один игрок задумывает четырёхзначное число, состоящее из различных цифр (ведущий ноль допустим). Второй игрок пытается отгадать задуманное число и на-зывает свои варианты (четырёхзначные числа в том же формате). В ответ первый игрок выдает фразу «n быков, m коров», где «быком» считается цифра из предложенного вари-анта, присутствующая в задуманном числе и стоящая на своем месте, а «коровой» - цифра, стоящая в другой позиции.
Так, если задумано число 5071, а предложенный вариант – 6012, ответ первого иг-рока «один бык, одна корова». Здесь «быком» считается цифра 0, а «коровой» - цифра 1.
Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров».
Входные данные находятся в текстовом файле BULLS.IN. Первая строка содержит последовательность из четырех цифр – задуманное число, во второй строке в том же фор-мате записан вариант ответа.
Выходные данные помещаются в текстовый файл BULLS.OUT. Единственная строка этого файла содержит два числа: количество «быков» и «коров».

Примеры входных данных Примеры выходных данных
5071 1 1
6012
4321
4321 4 0
1980
0879 0 3
1234
5678 0 0


Вторая задача.


Прижимистый дачник task code: GRATIS



Пенсионер Иван Иваныч вырастил на своей даче богатый урожай и упаковал его в N корзин. Вес i-й (1 ≤ i ≤ N) корзины равен Pi . Машины у Ивана Иваныча нет, но зато есть бесплатный сезонный билет на элек-тричку. Нанимать автомобиль для вывоза урожая Иван Иваныч не хочет – жалко денег... Вот и решил наш дачник потихоньку перевезти все свои кор-зины электричкой.
Согласно железнодорожным правилам, каждый пассажир имеет право бесплатно не более двух мест ручной клади суммарным весом не более Q. Платить за излишний багаж Иван Иваныч также не желает!
Определите минимальное число поездок, которые должен совершить дачник для перевозки всего урожая.
Входные данные находятся в файле GRATIS.IN. Первая строка файла содержит два целых числа – величины N и Q. Каждая из последующих N строк входного файла содержит одно целое число – величину Pi. Огра-ничения на данные: 1 ≤ N ≤ 100 000, 1 ≤ Pi, Q ≤ 10 000, Pi ≤ Q.
Выходные данные. В выходной файл GRATIS.OUT выведите искомое число поездок.

Пример входных данных Пример выходных данных
10 80 6
70
15
30
35
10
80
20
35
10
30

Для работы с текстовыми файлами необходимо:
1) подключить заголовочный файл <fstream>;
2) объявить входной и выходной потоки и связать их с файлами:
ifstream fin (”gratis.in”);
ofstream fout (”gratis.out”);
3) ввод-вывод выполнять с использованием этих потоков, например
fin >> N >> Q;
4) перед завершением работы программы закрыть файлы:
fin.close();
fout.close();


Как решения выглядят в с++???помогите пожалуйста!заранее, спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2011, 22:25     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров».
Посмотрите здесь:

Напишите программу, которая считает количество слов в файле - C++
Напишите программу, которая считает количество слов в файле input.txt . Словом называется последовательность непробельных символов,...

Определить количество быков, коров и телят для покупки исходя из их цены - C++
Составить алгоритм решения задачи: сколько можно купить быков, коров и телят, платя за быка 10 руб., за корову — 5 руб., а за теленка —...

Напишите программу, которая по введённому числу n проверяет является ли оно палиндромом - C++
Доброе время суток. Прошу опытных программистов помочь с домашней работой. Работу нужно сдать в воскресенье, но было бы просто...

Cколько можно купить быков, коров и телят на 100 рублей - C++
Составить алгоритм решения задачи: сколько можно купить быков, коров и телят, платя за быка 10 р., за корову - 5 р., а за теленка - 0,5 р.,...

Сколько быков, коров и телят можно купить на 100 рублей? - C++
1.Имеется 100 рублей. Сколько быков, коров и телят можно купить на все эти деньги, если плата за быка – 10 рублей, за корову – 5 рублей,...

Определить, сколько можно купить быков, коров и телят, если известны цены - C++
Сколько можно купить быков, коров и телят, если плата за быка 10 рублей, за корову - 5 рублей, за теленка - 0,5 рубля, если на 100 рублей...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.11.2011, 22:31     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». #2
Быки и коровы
Тина_Ливингстон
0 / 0 / 0
Регистрация: 01.11.2011
Сообщений: 59
11.11.2011, 14:18  [ТС]     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». #3
спасибо за первую задачу...но,пожалуйста,помогите решить вторую задачу про дачника.
Тина_Ливингстон
0 / 0 / 0
Регистрация: 01.11.2011
Сообщений: 59
15.11.2011, 14:51  [ТС]     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». #4
Люди, завтра нужно сдать вторую задачу! пожалуйста, помогите!
Тина_Ливингстон
0 / 0 / 0
Регистрация: 01.11.2011
Сообщений: 59
05.12.2011, 22:47  [ТС]     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». #5
Вот код задач про Дачника!
Он работает на обычных тестах, но не правильно работает на больших числах. Подскажите, что может ьыть не так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <fstream>
#include<algorithm>
using namespace std;
void main()
{
    setlocale(LC_ALL,".1251");
    int N,Q,k=0;
    ifstream fin ("GRATIS.IN");
    ofstream fout("GRATIS.OUT");
    fin>>N>>Q;
    if((N>=1)&&(N<=100000)&&(Q>=1)&&(Q<=10000))
    {
        int *a;
        a=new int [N];
        for(int i=0;i<N;i++)
        {
            fin>>a[i];
            if((a[i]>Q)||(a[i]<1))
                k++;
        }
 
        if(k==0)
        {
            reverse(a,a+N);
            //int temp;
            /*for(int i=0; i<N-1; i++)
            {
                for(int j=i+1; j<N; j++)
                    if(a[i]<a[j])
                    {
                        temp=a[i];
                        a[i]=a[j];
                        a[j]=temp;
                    }
            }*/
            int i=0;
            int j=N-1;
            k=0;
            while(i<j)
            {
                if((a[i]+a[j])<=Q)
                    j=j-1;
                i++;
                k++;
            }
            if (i==j)
                k++;
        }
 
                fout<<k;
        }
        else 
            fout<<"Вес одного из мешков не соответствует железнодорожным правилам";
 
    
 
    fin.close();
    fout.close();
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2014, 23:21     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров».
Еще ссылки по теме:

Вычислить сколько нужно купить быков, коров и телят, имея определенную сумму денег - C++
Помогите пожалуйста зделать програму по етой задеч: Сколько можно купить быков, коров и телят, платя за быка 10р., за корову 5р., а за...

Написать программу, которая копирует файлы из другого файла и считает количество строк - C++
Программа, которая копирует файлы из другого файла и считает количество строк

Используя функцию, составить программу, которая считает количество изменений знака в массиве чисел. y=f(x). В С++ - C++
Используя функцию, составить программу, которая считает количество изменений знака в массиве чисел. y=f(x). В С++.

Напишите программу, которая подсчитывает количество слов в строке - C++
Напишите программу, которая подсчитывает количество слов в строке.*


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

Или воспользуйтесь поиском по форуму:
MGchannel
0 / 0 / 0
Регистрация: 06.01.2014
Сообщений: 76
08.02.2014, 23:21     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров». #6
C++
1
2
3
4
5
6
for(long i=0;i<N;i++)
        {
            fin>>a[i];
            if((a[i]>Q)||(a[i]<1))
                k++;
        }
Работает для больших чисел (ограничение-1999999+(размер типа long))
Yandex
Объявления
08.02.2014, 23:21     Напишите программу, которая по задуманному числу и предложенному варианту второго игрока считает количество «быков» и «коров».
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru