Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 18.11.2009
Сообщений: 6
1

Вот не могу решить !!!

18.11.2009, 17:22. Показов 611. Ответов 3
Метки нет (Все метки)

вот задачи с которыми я не как не могу справетса :

Есть n городов, расположенных на прямой. Телекомпания хочет разместить 3 радара в некоторых трех городах для вещание. Однако компания хочет достичь максимальной мощности такой системы. Если радары расположены в городах с координатами x1<x2<x3, то мощность будет равна (x3-x2)*(x2-x1), то есть произведению расстояний. Необходимо найти наибольшую возможную мощность вещание.
Технические условия. Программа читает из клавиатуры число n (3<=n<=100000) - количество городов, потом n чисел, которые не превосходят 1000000 по абсолютной величине, - координаты города. Программа выводит на экран искомое число.
Пример
Введения
5 3 1 5 2 4
Выведения
4
*****************************
Задача Lazer

Коли на день рождения подарили много шариков и игрушечный лазер. Шарики надуты и разбросаны по комнате. Коля заинтересовался, сколько шариков он собьет, выстрелив в выбранном им направлении (если бы еще и лазер был настоящим!!!). Луч, проходя сквозь шарик, идет дальше. Размеры Лоли считать бесконечно малыми, а шарики считать кругами. Помогите имениннику.Технические условия.
Программа читает из клавиатуры количество шариков n (1<=n<=1000), потом два целых числа dx, dy, что не ровные одновременно нулю (-1000 <= dx,dy <=1000) - координаты точки, через которую пройдет луч лазера. Дальше программа читает n троек целых чисел, которые не превосходят 1000 за абсолютной величине. Каждая тройка - координаты центра и радиус дежурного шарика (всегда положительное число). Коля находится в начале координат. Никакие два шарика не имеют общие точки, а Коля не находится внутри шарика. Программа выводит на экран количество пробитых лучом лазера шариков. Если луч прикасается шарики, такой шарик не считается пробитым.
Пример
Введения
4 4 3 -4 -4 2 2 1 1 1 7 5 12 9 3
Выведения
2

Поиогите пожалуйсто !!!!!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2009, 17:22
Ответы с готовыми решениями:

Вот такое вот кажется лёгкое задание но не как не могу решить.
задание 223(В,И)Картинки загружайте на форум, во избежание их удаления или потери на сторонних...

вот такое уравнение над решить
Помогите пожалуйста решить уравнение. Зарание спасибо:)

Вот такой код не могу сделать !

Помогите,мне вот задали 3 задачи,2 сделал,а вот эту не могли бы мне решить?
Написать программу для подсчёта произведения последовательных натуральных чисел в диапазоне от 5 до...

3
133 / 132 / 29
Регистрация: 04.01.2009
Сообщений: 415
19.11.2009, 02:04 2
Для первой задачи есть такой вопрос или скорее всего уточнение: координаты n не должны повторяться, так как это будет один и тот же город?!
А в таком случае, решение очевидно:
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
#include <iostream>
 
int abs(int x) {return (x>0 ? x : !x+1);}
 
int main()
{
   int n;
for (;n>2;)
  {
   clrscr(); 
   cout<<"Vvedite kol-vo gorodov ";
   cin>>n;
  }
 
   int *x = new int [n];
   for (int i=0;i<n;i++)
     {
         Again:
         cout<<"Vvedite koordinatu dlia "<<i+1<<"goroda ";
         cin>>x[i];
         if (abs(x[i]>1000000) goto Again;
     }
 
    for (int i=0;i<n;i++)
        for (int j=i+1;j<n;j++) 
            if (x[j]>x[i]) 
               {
                  x[j]^=x[i];
                  x[i]^=x[j];
                  x[j]^=x[i];
               }
 
    cout<<(x[0]-x[(n-1)/2])*(x[(n-1)/2]-x[n-1]);
   return 0;
}
0
Эксперт С++
4719 / 2540 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
19.11.2009, 09:24 3
manfeese, Немного подправил Ваш код. Самая главная ошибка в принципе расчета максимальной мощности. Нужно было использовать не центральный (по количеству) город, а центральный по значению координат. Что бы было понятнее приведу пример: Пусть есть 5 городов с координатами 1 2 3 5 9. Если выбрать 1 3 9 (средний выбран по количеству) то мощность получается 12. А правильный вариант будет 1 5 9 (средний выбран по значению), мощность в этом случае равна 16.
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
#include <iostream.h>
#include <math.h>
int abs(int x) {return (x>0 ? x : !x+1);}
 
int main()
{
   int n;
for (;n<3;)
  {
   clrscr(); 
   cout<<"Vvedite kol-vo gorodov ";
   cin>>n;
  }
 
   int *x = new int [n];
   for (int i=0;i<n;i++)
     {
         Again:
         cout<<"Vvedite koordinatu dlia "<<i+1<<"goroda ";
         cin>>x[i];
         if (abs(x[i])>1000000) goto Again;
     }
 
    for (int i=0;i<n;i++)
        for (int j=i+1;j<n;j++) 
            if (x[j]>x[i]) 
               {
                  x[j]^=x[i];
                  x[i]^=x[j];
                  x[j]^=x[i];
               }
    int i_opt=0, sum_sr;
    sum_sr=(x[0]-x[n-1])/2+x[n-1];
   for (int i=0;i<n;i++)
       if(fabs(sum_sr-x[i_opt])>fabs(sum_sr-x[i]))
           i_opt=i; 
    cout<<(x[0]-x[i_opt])*(x[i_opt]-x[n-1]);
   return 0;
}
0
133 / 132 / 29
Регистрация: 04.01.2009
Сообщений: 415
19.11.2009, 11:52 4
valeriikozlov, согласен с вами! Я тоже об этом думал, только никак пример подходящий в голову не приходил...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2009, 11:52

Такая вот непонятка с таблицей как ее решить
Делаю вот такую таблицу CREATE TABLE IF NOT EXISTS `settings` ( `id` int(3) NOT NULL...

Не могу разобраться с сетью. Вот (Схема)
Не могу разобраться с сеткой в офисном здании. Сервера имеют один WinServer 2008, другой FreeBSD....

Не могу написать в MathCad вот это, см. рисунок
Ребят, всем привет. Во вложении картинка, отметил красным что не могу никак вписать. Наверное...

Не могу понять в коде cshtml вот это HttpPost
public ActionResult Create(string fileTitle) { try { ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru