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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
vrachishka
Сообщений: n/a
#1

О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА - C++

14.04.2008, 19:07. Просмотров 1101. Ответов 3
Метки нет (Все метки)

РЕБЯТА ПОМОГИТЕ!!!!
Нужно решить задачку С++, она очень трудная...никто не может решить!на вас надежда!
Я сейчас напишу условие,если кто сможет пришлите полное решение на axmetov_ilyas@mail.ru

"Возьмем случайным образом p двузначных чисел.Возьмем случайным образом так же двузначное число s. Соединим эти p чисел между собой сложениями или вычитаниями.Все числа должны быть использованы. Можно ли таким образом получить число s "

Выручайте ребята!!!
Заранее спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2008, 19:07     О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА
Посмотрите здесь:

Очень интересная задачка на C++ - C++
Исследовать сходимость ряда Фурье по косинусам для функции f(x)=l-x на отрезке ,l=1. Определить, сколько членов ряда Фурье необходимо...

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

Очень простая задачка (но не для меня) - C++
Привет, помогите плиз. У меня одностраничник, при заходе на него с ПК устройства, сайт почему автоматически перебрасывает вконец...

Трудная программа - C++
Помогите решить задачу пожайлуста. "Нахождение Кубического корня от числа задонной точностью. Пользователь вводит число и точность....

Массивы A+B=C (трудная задача из ЕГЭ) - C++
Два одномерных массива, состоящие из целых натуральных чисел, задаются с клавиатуры : массив A, длинной m и массив B, длинной n....

Довольно Трудная задача(Двумерные массивы) - C++
Вот попалась такая задача: Найти седловую точку целочисленной матрицы с числом строк не более 12, числом столбцов не более 20....

Задачка - C++
Здравствуйте, есть задачка: "Вводится строка, потом вводится символ. Далее нужно в строке убрать все эти символы, и сместить строку на...

задачка на с++ - C++
сделать таблицу размером N*N каждая строка и каждый столбец который содержит все числа от 1до N помогите не пойму как делать

Задачка - C++
Помогите решить вот такую вот задачку: Получить все четырехзначные числа(1234,например),в которых не больше 2-х одинаковых цифр.Сколько...

задачка - C++
Дана последовательность чисел a1, …, an (N<20) и число K. Найти количество элементов имеющих значение меньше К, и количество элементов...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Coin
0 / 0 / 0
Регистрация: 12.04.2008
Сообщений: 14
14.04.2008, 22:30     О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА #2
нуууу, я бы сделал вот так:
Код
bool func_sum (int *mas, int size, int s, int sum) {
	if (size==1) return ((sum+*mas==s)||(sum-*mas==s));
	else {
		bool temp1=func_sum(mas+1,size-1,s, sum+*mas);
		bool temp2=func_sum(mas+1,size-1,s, sum-*mas);
		return (temp1||temp2);
	}	
}
это сама функция. Реализованно только выяснение существования такой "линейной комбинации", само ее нахождение в постановке задачи не указанно

из мейна вызывать так:

Код
bool test=func_sum(mas,size,s,0);
где mas - массив p чисел, size=p, s=s, а 0, ну это так надо
Coin
0 / 0 / 0
Регистрация: 12.04.2008
Сообщений: 14
14.04.2008, 22:39     О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА #3
Перечитал, человек просит полное решение, народ прикрутите ввод к алгоритму, а я спать
Coin
0 / 0 / 0
Регистрация: 12.04.2008
Сообщений: 14
15.04.2008, 16:29     О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА #4
Наслаждайся:
Код
#include <iostream.h>
#include <stdlib.h>
#include <time.h>

bool func_sum (int *mas, int size, int s, int sum);

bool func_sum (int *mas, int size, int s, int sum) {
	if (size==1) return ((sum+*mas==s)||(sum-*mas==s));
	else {
		bool temp1=func_sum(mas+1,size-1,s, sum+*mas);
		bool temp2=func_sum(mas+1,size-1,s, sum-*mas);
		return (temp1||temp2);
	}
	
}

int main() {
	int size,s,*mas;
	srand((unsigned)time(NULL));
	
	//-----------------------------------------------
	//size=rand()%100;
	size=5;
	//-----------------------------------------------
	s=rand()%100;;
	mas=new int [size];
	for (int i=0;i<size;i++) {
		mas[i]=rand()%100;
		cout << mas[i]<<' ';
	}
	cout << endl <<"s="<<s<<endl;
	if (func_sum(mas,size,s,0))
		cout << "Yes" << endl;
	else
		cout << "No" << endl;

	delete [] mas;
	mas=NULL;

	return 0;
	
}
Вот только одно, в условии сказанно, что нужно p двухзначных чисел, где p тоже двухзначное. Очень, очень много вычислений, например 99 чисел, каждое действие порождает еще 2, то еще два, еще и еще и еще...

Расскажу я сказку про число 2.
Был какойто перец. Придумал он всем известные шахматы. И очень понравилась игра эта султану одному, и разрешил он перцу выбрать награду. И сказал перец скромно, мне много не надо. Положи на первую клетку доски 2 рисовых зерна, на следующую - 4, на следующую в 2 раза больше и так далее прошу тебя, о могучий, заполни доску игровую. И пообещал султан исполнить его желание, еще и подивился скромности перца.
Так и пустил перец по миру султана, ибо слово было дано в присуцтвии свидетелей, а как известно нам: 2 в 64ой - это дохера.
Мораль думаем сами

Но если таки попросят чтоб было по условию, в мейне я выделил облось, там 2 строки, закомментируещь рабочую и откроещь закомментированную.
Yandex
Объявления
15.04.2008, 16:29     О-О-ОЧЕНЬ ТРУДНАЯ ЗАДАЧКА
Ответ Создать тему
Опции темы

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