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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.69
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
#1

Представить целое число N в виде суммы M примерно равных целых чисел. - C++

30.04.2011, 19:59. Просмотров 1684. Ответов 6
Метки нет (Все метки)

Разбиение на части
(Время: 1 сек. Память: 16 Мб Сложность: 21%)

Необходимо представить целое число N в виде суммы M примерно равных целых чисел. Будем считать, что числа примерно равны, если они отличаются друг от друга не более чем на единицу.
Входные данные

Во входном файле INPUT.TXT записаны два натуральных числа N и M через пробел, каждое из которых не превосходит 30000.
Выходные данные

Выходной файл OUTPUT.TXT должен содержать M примерно равных целых чисел, сумма которых должна быть равна N. Все числа следует вывести в одной строке в порядке неубывания через пробел.
1) INPUT.TXT
13 4
1) OUTPUT.TXT
3 3 3 4
2) INPUT.TXT
72 8
2) OUTPUT.TXT
9 9 9 9 9 9 9 9
В голове не приходит нормального решения.

 Комментарий модератора 
Именуйте темы осмысленно! Название темы должно максимально полно отражать её содержимое.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2011, 19:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Представить целое число N в виде суммы M примерно равных целых чисел. (C++):

Оптимизировать поиск числа способов представить число в виде суммы четырёх положительных целых чисел - C++
Сумма Задано целое положительное целое число x. Найдите число способов представить его в виде суммы четырёх положительных целых чисел...

Представьте число в виде суммы трех приблизительно равных натуральных чисел - C++
Задание: Дано натуральное число k. Представьте его в виде суммы трех приблизительно равных натуральных чисел. Вот такой код с горем...

Даны натуральное число n. Среди чисел 1, 2, …, n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел - C++
Даны натуральное число n. Среди чисел 1, 2, …, n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел.

Даны натуральное число n. Среди чисел 1, 2, …, n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел. - C++
Собственно само задание. 5). Даны натуральное число n. Среди чисел 1, 2, …, n найти все те, которые можно представить в виде суммы...

Определить, можно ли представить число N в виде суммы кубов трех натуральных чисел - C++
Определить можно ли представить заданное натуральное число N как сумму кубов каких-нибудь трех натуральных чисел n, m, k. ...

Определить, можно ли число представить в виде суммы квадратов трех натуральных чисел - C++
Дано натуральные число n . Можно ли представить его в виде суммы трех квадратов натуральных чисел? Если можно то, а) указать тройку x,y,z...

6
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
30.04.2011, 20:14 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
main(){
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    int a,b,i,c;
    cin >> a
        >> b;
    c=a-a/b*b;
    for (i = 0; i < b-c; i++)
        cout << a/b << ' ';
    for (i = 0; i < c; i++)
        cout << a/b+1 << ' ';
    return 0;
}
1
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
30.04.2011, 20:21  [ТС] #3
diagon, значение с всегда будет равно нулю?
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
30.04.2011, 20:23 #4
Нет, деление ведь целочисленное... т.е. a не всегда равно a/b*b.
К примеру, если а=4, а b=3, то с=4-4/3*3=4-3=1;
1
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
30.04.2011, 20:24  [ТС] #5
diagon, точняк!!))) Я труба над ней голову ломал, а все так просто)))
0
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
30.04.2011, 20:54 #6
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
int main()
{
  int a = 11, b = 4, c = 0;
  for( ;b;a-=c,--b )
  {
     std::cout << (c = a/b) << " ";
  }    
}
2
Temirlan90
132 / 132 / 8
Регистрация: 30.09.2010
Сообщений: 333
30.04.2011, 23:20  [ТС] #7
alex_x_x,
C++
1
2
3
4
for( ;b;a-=c,--b )
  {
     std::cout << (c = a/b) << " ";
  }
Какой страшный кусок, поясните буду очень признателен.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2011, 23:20
Привет! Вот еще темы с ответами:

Определить, можно ли представить число в виде суммы двух квадратов натуральных чисел - C++
Дано натуральное число n.Определить,можно ли представить его в виде суммы двух квадратов натуральных чисел.Если да,то найти все пары x,y...

Определить, можно ли представить заданное число в виде суммы четырех простых чисел - C++
Люди,помоги решить задачку: Дано натуральное число n. Можно ли представить его в сумме четырех простых чисел? Вывести на печать все...

Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных чисел? - C++
Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных чисел? Написать программу решения этой задачи.

Выяснить, можно ли представить данное число в виде суммы трех квадратов натуральных чисел - C++
Дано натуральное число n. Можно ли представить его в виде суммы трех квадратов натуральных чисел? Если можно, то указать тройку x, y, z...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
30.04.2011, 23:20
Ответ Создать тему
Опции темы

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