Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2010, 09:03   #1
Анюта01
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 16
Восклицание нахождения минимальной суммы N

Всю неделю бутылка «Пепси » стоила K рублей, а пустая бутылка – L рублей. Компания друзей, собравшаяся в понедельник, располагала первоначальным капиталом в N рублей и купила на все деньги «Пепси». Употребив всё, они на следующий день сдали пустые бутылки, добавили сдачу предыдущего дня и снова на все деньги купили «Пепси». Данная процедура продолжалась каждый день, пока была возможность. Написать программу нахождения минимальной суммы N, при которой в пятницу друзьям будет что употребить.

Помогите решить пожалуйста
Анюта01 вне форума Ответить с цитированием
Старый 15.03.2010, 09:15   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

ОФФТОП: Аллах всемогущий, кто составляет такие задачи? Чтобы у моих врагов такие друзья были . Ну ладно водка, но чтобы бутылки из под "Песпи" сдавать для того, чтобы на следующий день опять брать "Пепси"....

ЗЫ. Золотая мечта Пепси-Колы...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 15.03.2010 в 09:20.
Utkin вне форума Ответить с цитированием
Старый 15.03.2010, 10:12   #3
Loky
Пользователь
 
Регистрация: 02.10.2008
Сообщений: 14
По умолчанию

Решай перебором. Береш N = 1 считаешь хватило ли, потом N=2 и т.д. пока не хватит
Loky вне форума Ответить с цитированием
Старый 15.03.2010, 10:30   #4
Serebro
FORTRAN programmer
Форумчанин
 
Регистрация: 08.12.2009
Сообщений: 153
По умолчанию

Начинай с пятницы. Пусть в пятницу 1 бутылка (K рублей)...
Serebro вне форума Ответить с цитированием
Старый 15.03.2010, 11:12   #5
Loky
Пользователь
 
Регистрация: 02.10.2008
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Serebro Посмотреть сообщение
Начинай с пятницы. Пусть в пятницу 1 бутылка (K рублей)...
И ничего не выйдет ) Я тут озадачиться решил, невыходит обратоного вычисления и формулу не вывести из-за целочисленного деления.
Пока тока перебор и примерный максимум при котором 100% будет решение получилось.
Максимум это К^5/L^4, и от К до этого числа перебор
Loky вне форума Ответить с цитированием
Старый 15.03.2010, 11:18   #6
Serebro
FORTRAN programmer
Форумчанин
 
Регистрация: 08.12.2009
Сообщений: 153
По умолчанию

Цитата:
Сообщение от Loky Посмотреть сообщение
И ничего не выйдет ) Я тут озадачиться решил, невыходит обратоного вычисления и формулу не вывести из-за целочисленного деления.
Пока тока перебор и примерный максимум при котором 100% будет решение получилось.
Максимум это К^5/L^4, и от К до этого числа перебор
Пятница - 1
Четверг - M1 = int[K/L] +1 // +1, если не целочисленное деление
Среда - M2 = int[K*M1/L ] +1 // +1, если не целочисленное деление
........
Serebro вне форума Ответить с цитированием
Старый 15.03.2010, 11:41   #7
Loky
Пользователь
 
Регистрация: 02.10.2008
Сообщений: 14
По умолчанию

И что мы имеем. При К=4, Л=3
ПТ 1 (4р)
ЧТ 4/3+1(т.к. 4/3 не целочисленное) = 2 (8р)
СР 2*4/3+1=3 (12р)
ВТ 3*4/3 +1= 5 (20р)
ПН 5*4/3+1 =7 (28р)
по моей формуле 4^5/3^5 = 12 р
Правильный ответ 9 рублей
ПН - 9 (2шт + 1р)
ВТ - 7 (1шт + 3р)
СР - 6 (1шт + 2р)
ЧТ - 5 (1шт +1р)
ПТ - 4 (1шт)

Код:
var
  i,k,l: integer;
  tek: integer;
  m1,m2: integer;
begin
  tek:=k;
  for i:=1 to 4 do begin
    m1:=pt;
    m2:=0;
    while m1>=k do begin
      m2:=m2+1;
      m1:=m1-l;
    end;
    tek:=m1+m2*k;
  end;
  label5.Caption:=IntToStr(tek);
end;
Спасибо Serebro, навел на мысль, но твой ход был недоконца верен
2Анюта01:
Берем с пятницы, сумма должна быть K
Зачем все последующие дни, от предыдущей суммы отнимаем суммы сдачи бутылок L, считая бутылки(m2), пока остаток (m1) не станет меньше цены бутылки (таким образом мы получим максимальный остаток).
Полученное количество бутылок умножаем на цену и прибвляем остаток.
------------
P.S. Не откажусь от "+"

Последний раз редактировалось Stilet; 15.03.2010 в 12:42.
Loky вне форума Ответить с цитированием
Старый 15.03.2010, 14:01   #8
k1r1ch
ACM!
Форумчанин
 
Аватар для k1r1ch
 
Регистрация: 19.06.2009
Сообщений: 382
Лампочка

Вот если что похожая задача и мое решение:
Код:
#include <cstdio>

int f, p, x, i, j;

int main()
{
  freopen("input.txt", "r", stdin);
  freopen("output.txt", "w", stdout);
  scanf("%d%d", &f, &p);
  x = f;
  for (i = 0; i < 4; i++)
  {
    for (j = x/p; x-j*p < f; j--) 
      ;
    x = ++j*f+x-j*p;
  };
  printf("%d", x);
  return 0;
};
k1r1ch вне форума Ответить с цитированием
Старый 15.03.2010, 14:15   #9
Serebro
FORTRAN programmer
Форумчанин
 
Регистрация: 08.12.2009
Сообщений: 153
По умолчанию

Общий случай.

пт. 1 бутылка = K рублей = L (цена 1 бутылки) + M (остаток рублей)
чт. ................................... ................................... .....
................................... ................................... ..........................

Последний раз редактировалось Serebro; 15.03.2010 в 14:47.
Serebro вне форума Ответить с цитированием
Старый 15.03.2010, 14:56   #10
Анюта01
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 16
По умолчанию

напишите код программы полностью пожалуйста, ату всю голову сломала с этими пепсиманами
Анюта01 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[mysqld] ft_min_word_len=3 - изменение минимальной длины слова в поиске MySQL Alar SQL, базы данных 2 13.09.2020 05:21
нахождения суммы ряда с заданной точностью E pinch000 Общие вопросы C/C++ 1 06.11.2009 13:03
определить и вывести на печать имя минимальной величины и ее значение. Babur4iK Паскаль, Turbo Pascal, PascalABC.NET 3 06.10.2009 17:39
Найти отношения суммы элементов главной диагонали и суммы элементов побочной диагонали квадратной матрицы Elmander Помощь студентам 2 21.06.2007 07:15