HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #5851  
Старый 20.03.2010, 22:48
skagen
Участник форума
Регистрация: 08.01.2010
Сообщений: 155
Провел на форуме:
1008872

Репутация: 22
Отправить сообщение для skagen с помощью ICQ
По умолчанию

Цитата:
Сообщение от emillord  
Лови
http://muzorka.ru/index.php?showtopic=16060
спасибо,выручил
 
Ответить с цитированием

  #5852  
Старый 21.03.2010, 11:07
e[X]theta[M]ine
Познающий
Регистрация: 21.12.2009
Сообщений: 97
Провел на форуме:
638958

Репутация: 53
По умолчанию

Парни с этой задачей у меня конкретный ступор
Вы можете вспомнить хоть одного своего знакомого до двадцатилетнего возраста, который в детстве не играл в компьютерные игры? Если да, то может быть вы и сами не знакомы с этим развлечением? Впрочем, трудностей при решении этой задачи это создать не должно.

Во многих старых играх с двумерной графикой можно столкнуться с подобной ситуацией. Какой-нибудь герой прыгает по платформам (или островкам), которые висят в воздухе. Он должен перебраться от одного края экрана до другого. При этом при прыжке с одной платформы на соседнюю, у героя уходит |y2-y1| единиц энергии, где y1 и y2 – высоты, на которых расположены эти платформы. Кроме того, у героя есть суперприем, который позволяет перескочить через платформу, но на это затрачивается 3*|y3-y1| единиц энергии. Конечно же, энергию следует расходовать максимально экономно.

Предположим, что вам известны координаты всех платформ в порядке от левого края до правого. Сможете ли вы найти, какое минимальное количество энергии потребуется герою, чтобы добраться с первой платформы до последней?
Входные данные

В первой строке входного файла INPUT.TXT записано количество платформ n (1 ≤ n ≤ 30000). Вторая строка содержит n натуральных чисел, не превосходящих 30000 – высоты, на которых располагаются платформы.
Выходные данные

В выходной файл OUTPUT.TXT запишите единственное число – минимальное количество энергии, которую должен потратить игрок на преодоление платформ (конечно же в предположении, что cheat-коды использовать нельзя).
 
Ответить с цитированием

  #5853  
Старый 21.03.2010, 21:24
n1ghtstalker
Познающий
Регистрация: 28.09.2008
Сообщений: 65
Провел на форуме:
152084

Репутация: 8
По умолчанию

Цитата:
Сообщение от e[X]theta[M]ine  
Парни с этой задачей у меня конкретный ступор
Вы можете вспомнить хоть одного своего знакомого до двадцатилетнего возраста, который в детстве не играл в компьютерные игры? Если да, то может быть вы и сами не знакомы с этим развлечением? Впрочем, трудностей при решении этой задачи это создать не должно.

Во многих старых играх с двумерной графикой можно столкнуться с подобной ситуацией. Какой-нибудь герой прыгает по платформам (или островкам), которые висят в воздухе. Он должен перебраться от одного края экрана до другого. При этом при прыжке с одной платформы на соседнюю, у героя уходит |y2-y1| единиц энергии, где y1 и y2 – высоты, на которых расположены эти платформы. Кроме того, у героя есть суперприем, который позволяет перескочить через платформу, но на это затрачивается 3*|y3-y1| единиц энергии. Конечно же, энергию следует расходовать максимально экономно.

Предположим, что вам известны координаты всех платформ в порядке от левого края до правого. Сможете ли вы найти, какое минимальное количество энергии потребуется герою, чтобы добраться с первой платформы до последней?
Входные данные

В первой строке входного файла INPUT.TXT записано количество платформ n (1 ≤ n ≤ 30000). Вторая строка содержит n натуральных чисел, не превосходящих 30000 – высоты, на которых располагаются платформы.
Выходные данные

В выходной файл OUTPUT.TXT запишите единственное число – минимальное количество энергии, которую должен потратить игрок на преодоление платформ (конечно же в предположении, что cheat-коды использовать нельзя).
ну по алгоритму примерно скажу :
рассчитываем разность между y2-y1 и y3-y1 , если
y2-y1 > 3*(y3-y1) то выбираем этот путь в инном случае наоборот.

ну и собственно в переменную суммируются результаты всех минимальных выбранных путей.

Последний раз редактировалось n1ghtstalker; 21.03.2010 в 21:27..
 
Ответить с цитированием

  #5854  
Старый 21.03.2010, 22:59
Soherox
Познающий
Регистрация: 17.02.2010
Сообщений: 45
Провел на форуме:
195184

Репутация: 47
По умолчанию

Цитата:
но на это затрачивается 3*|y3-y1| единиц
Если высоты будут равны (y3 = y1), то затрачивается значит 0 энергии? Если да, то n1ghtstalker, Ваш алгоритм не работает, в этом случае надо динамикой решать

Последний раз редактировалось Soherox; 21.03.2010 в 23:02..
 
Ответить с цитированием

  #5855  
Старый 21.03.2010, 23:53
n1ghtstalker
Познающий
Регистрация: 28.09.2008
Сообщений: 65
Провел на форуме:
152084

Репутация: 8
По умолчанию

Цитата:
Сообщение от Soherox  
Если высоты будут равны (y3 = y1), то затрачивается значит 0 энергии? Если да, то n1ghtstalker, Ваш алгоритм не работает, в этом случае надо динамикой решать
дело всё в том что в условии задачи оговорено только перемещение по y. но никак не по x.
если бы y- было осью абцисс , то в любом случае ++ , так что мой алгоритм относительно не верен.
я лишь следую условию задачи.
 
Ответить с цитированием

  #5856  
Старый 21.03.2010, 23:59
EndLeSSDre@M
Участник форума
Регистрация: 18.07.2009
Сообщений: 278
Провел на форуме:
3055344

Репутация: 259
Отправить сообщение для EndLeSSDre@M с помощью ICQ
По умолчанию

А если подумать... ведь действительно если высоты у3 и у1 равны... то ведь тогда энергии 0 получается?!?!?? но так n1ghtstalker относительно прав...вычисляем разницу и сравниваем
 
Ответить с цитированием

  #5857  
Старый 22.03.2010, 00:05
Soherox
Познающий
Регистрация: 17.02.2010
Сообщений: 45
Провел на форуме:
195184

Репутация: 47
По умолчанию

Соглашусь с Вами друзья, ждем подробностей от автора, но если что, вот код по алгоритму n1ghtstalker


Код:
{$APPTYPE CONSOLE}
const
  ch = 30000;
var
  i, j, n, rez: integer;
  a: array [1..ch] of integer;

begin
  reset(input, 'input.txt');
  rewrite(output, 'output.txt');
  readln(n);
  rez:=0;
  for i:=1 to n do read(a[i]);
  i:=1;
  while i<n do
    begin
      if n - i >= 3 then
        begin
          if abs(a[i]-a[i+1])+abs(a[i+1]-a[i+2]) < 3*abs(a[i+2] - a[i]) then
            begin
              rez:=rez + abs(a[i]-a[i+1]);
              inc(i);
            end
         else
           begin
             rez:=rez + 3*abs(a[i+2] - a[i]);
             inc(i, 2);
           end;
        end
      else
        begin
          rez:=rez + abs(a[i]-a[i+1]);
          inc(i);
        end;
    end;
  writeln(rez);
  close(input);
  close(output);
end.
Если все же y3 = y1, и энергия в этом случае = 0, то код будет валится

P.S. Код писался на Delphi, если нужно на паскаль, то удаляем {$APPTYPE CONSOLE}, и вместо
Код:
  reset(input, 'input.txt');
  rewrite(output, 'output.txt');
это

Код:
  assign(input, 'input.txt');
  assign(output, 'output.txt');
  reset(input);
  rewrite(output);

Последний раз редактировалось Soherox; 22.03.2010 в 00:11..
 
Ответить с цитированием

  #5858  
Старый 22.03.2010, 16:33
akimov_aleks
Новичок
Регистрация: 03.05.2009
Сообщений: 22
Провел на форуме:
38103

Репутация: 0
По умолчанию

подскажите плиз как нати рабочую прокси.
есть код для проверки переменная с переберает по списку если рабочая прокся то идем дальше а если нет как вернуть цикл чтоб начил дальше переберать...?
Код:
{Начало проверки прокси}

begin
// грузим фаил с проксями
  ProxyList:=tstringlist.Create;
  ProxyList.LoadFromFile('Proxy.txt');
  params:=TStringList.Create;
  Presponseres:=TStringList.Create;

// получаем проксю делим на ip и port ИКАК СЮДА ВЕРНУТЬСЯ
  Proxy:=ProxyList.Strings[0]; 
  ip:=getip(Proxy);
  por:=getport(Proxy);
  port:=StrToInt(por);

// тут и так понятно
  IdHTTP1.ProxyParams.ProxyServer:=ip;
  IdHTTP1.ProxyParams.ProxyPort:=port;

// начинаем проверку
    try
    IdHTTP1.Get('http://ya.ru');
    except
// вот тут если прокся мертвая  удаляем эту строку , и как вернуться выше
    end;

end;
{конец проверки прокси}
 
Ответить с цитированием

  #5859  
Старый 22.03.2010, 17:44
Dosia
Участник форума
Регистрация: 05.06.2009
Сообщений: 127
Провел на форуме:
1313455

Репутация: 249
По умолчанию

Код:
var
intA:integer;
...
{Начало проверки прокси}

begin
// грузим фаил с проксями
  ProxyList:=tstringlist.Create;
  ProxyList.LoadFromFile('Proxy.txt');
  params:=TStringList.Create;
  Presponseres:=TStringList.Create;

// получаем проксю делим на ip и port ИКАК СЮДА ВЕРНУТЬСЯ
  for intA:=0 to ProxyList.Count - 1 do begin
  Proxy:=ProxyList.Strings[intA]; 
  ip:=getip(Proxy);
  por:=getport(Proxy);
  port:=StrToInt(por);

// тут и так понятно
  IdHTTP1.ProxyParams.ProxyServer:=ip;
  IdHTTP1.ProxyParams.ProxyPort:=port;

// начинаем проверку
    try
    IdHTTP1.Get('http://ya.ru');
    except
// вот тут если прокся мертвая  удаляем эту строку , и как вернуться выше
    end;
    end;
end;
{конец проверки прокси}
 
Ответить с цитированием

  #5860  
Старый 23.03.2010, 12:40
ZnikiR
Участник форума
Регистрация: 14.01.2009
Сообщений: 194
Провел на форуме:
798217

Репутация: 44
Отправить сообщение для ZnikiR с помощью ICQ
По умолчанию

Здравствуйте.
В общем только учу Delphi.
Возникли несколько проблем.
1)Посоветуйте хороший понятный учебник с нуля по Делфи
2)Короче нужна программа которая при запуске проверяет в файле наличия строк и если ничего не находит то записывает дынные,которые заданны.

Последний раз редактировалось ZnikiR; 23.03.2010 в 13:01..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2568 25.04.2026 12:58
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ