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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
#1

Задача Золото племени АББА - C++

05.08.2013, 15:47. Просмотров 2013. Ответов 6
Метки нет (Все метки)

Почему-то у меня не проходит по одному из тестов решение для следующей задачи:
Золото племени АББА
(Время: 1 сек. Память: 16 Мб Сложность: 40%)
Главный вождь племени Абба не умеет считать. В обмен на одну из его земель вождь другого племени предложил ему выбрать одну из трех куч с золотыми монетами. Но вождю племени Абба хочется получить наибольшее количество золотых монет. Помогите вождю сделать правильный выбор!

Входные данные

В первой строке входного файла INPUT.TXT записаны три натуральных числа через пробел. Каждое из чисел не превышает 10100.

Выходные данные

В выходной файл OUTPUT.TXT нужно вывести одно целое число — максимальное количество монет, которые может взять вождь.
Решение:
C++ (Qt)
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
#include <fstream>
#include <string>
 
using namespace std;
 
string Max(string a, string b);
 
int main()
{
    
    ifstream in("input.txt");
    ofstream out("output.txt");
    string s1,s2,s3;
    in >> s1>>s2>>s3;   
    out<<Max(s1,Max(s2,s3));    
}
 
string Max(string a, string b)
{
    int x,y;
    x = a.length();
    y = b.length();
    if (x != y)
    {
        return (x>y)? a:b;
    } else
    {
        bool factorx = 0;
        for (int i = 0; i < x; ++i)
        {
            if (a[i]>b[i]) {factorx=1;break;}
        }
        if (factorx) {return a;} else {return b;};
    }
    
}
Подскажите, что я упускаю из виду в данном решении?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.08.2013, 15:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача Золото племени АББА (C++):

Золото племени АББА - C++
Добрый день! Я пытался решить довольно-таки простенькую задачку &quot;Золото племени АББА&quot;. Проблема в том, что мой алгоритм не может...

Оптимизация программы "Золото племени АББА" - Pascal
Помогите оптимизировать, если что задача: (Ссылка на сторонний ресурс удалена) (Время: 1 сек. Память: 16 Мб Сложность: 40%) ...

Главный вождь племени Абба не умеет считать - Pascal
короче решил задачу вот код Program Srednee; Var max,Element:integer; f:file of integer; f1:text; Begin max:=0; ...

Алфавит племени «тумба-юмба» - PascalABC.NET
В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести на экран все возможные слова, состоящие из K букв, в...

Дана символьная строка.Подсчитать сколько раз в ней встречается подслово абба - C (СИ)
Дана символьная строка.Подсчитать сколько раз в ней встречается подслово абба. В строке аббабба это слово встречается 1 раз а должно быть...

Взлом игры Warspear Online на золото - MMO игры
Возможно ли взломать игру warspear online на золото желательно через телефон. Если да,то как? Эта игра предназначена как и для пк так и для...

6
Maxak
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 47
05.08.2013, 16:00 #2
Нужно понять какое из трех чисел больше?
0
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
05.08.2013, 16:02  [ТС] #3
да. Пример:
входные данные
189285 283 4958439238923098349024
выходные
4958439238923098349024
0
Maxak
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 47
05.08.2013, 16:04 #4
Цитата Сообщение от Bohes_ Посмотреть сообщение
да. Пример:
входные данные

выходные
не может же вроде привышать 10100 ..или я что то не понял?
0
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
05.08.2013, 16:06  [ТС] #5
Цитата Сообщение от Maxak Посмотреть сообщение
не может же вроде привышать 10100 ..или я что то не понял?
не превышает 10 в сотой степени -- 1000 знаков

Добавлено через 36 секунд
Ссылка на оригинал:
0
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,282
Записей в блоге: 2
Завершенные тесты: 1
05.08.2013, 16:14 #6
Цитата Сообщение от Bohes_ Посмотреть сообщение
не превышает 10 в сотой степени -- 1000 знаков
101 знак

Добавлено через 3 минуты
Цитата Сообщение от Bohes_ Посмотреть сообщение
if (a[i]>b[i]) {factorx=1;break;}
вот что ты упускаешь. Ты ищешь 1 цифру в числе a, которая будет больше цифры, которая стоит в таком же разряде в другом числе. Но! Если будет цифра в числе b больше чем в a, ты это пропускаешь и ищешь дальше, а нужно делать break. Пример: 522 и 721. У тебя сравнивает так: 5<7, фиг с ним. 2=2, фиг с ним. 2>1 - все, выходим. Число A больше числа B
1
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
05.08.2013, 16:26  [ТС] #7
Dani, спасибо. Добавил
C++ (Qt)
1
if (a[i]>b[i]) {factorx=1;break;}
---все работает

Добавлено через 6 минут
Цитата Сообщение от Dani Посмотреть сообщение
101 знак
Согласен, ночью мозги совсем не варят...
0
05.08.2013, 16:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2013, 16:26
Привет! Вот еще темы с ответами:

Написать функцию, которая найдёт возможный вариант размещения жителей племени - C (СИ)
Есть такая интересная задачка, давалась в одном из вузов на экзамене в первом семестре. На острове живут N человек племени Тумба-Юмба, и...

Чит на золото в WoW с помощью WPE pro - MMO игры
кто в WPE pro ломал WOW на голды? 3.3.5а клиент розкажите как

Считать количество медалей в последовательности золото, серебро, бронза - C#
смысл такой - нужно считать количество медалей в последовательности золото,серебро,бронза с клавиатуры. потом я пытаюсь разрезать строку и...

Как выдернуть цены на золото (желательно вместе с диагаммой) - Delphi
Как выдернуть цены на золото (желательно вместе с диагаммой) на форму, с сайта www.kitco.com. Может у кого примеры есть какие-нить... либо...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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