Перейти к содержанию

Gros

Пользователи
  • Постов

    1 771
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Gros

  1. на 2х клавах поиграть можно...проверено на 2007 фифе

    но в 09 с друзьями поиграть не смогли...

    для этого нужно чтобы одна клава была с USB входом...и 2 программки(1 (PPJoy)- чтобы определить клаву как джойстик, 2 (PPJoyKey) - чтобы настройть кнопки управления)

    проги есть в сети, погугли и будет счастье...

  2. Привет Всем!!я недавно тут,хотел спросить,я уже скачал файлов 5,которые все постоянно качают,оставил их на раздачу,но уже дня 3 прошло и так не мегабайта не скачали...в интернете в день часов по 6-7 сижу...

    Рейтинг: 0.02

  3. Идея решения:

    Данную задачу можно решить используя метод перебора с возвратом.

    Используя массив координат перемещения, смотрим, где отсутствуют стены, для каждой клетки, и последовательно двигаемся в ту клетку, в которую

    возможно, предварительно помечая клетку, в которой уже были. Если мы зашли в тупик, то возвращаемся в клетку, из которой вышли. Одновременно считаем количество клеток в каждой комнате. Когда происходит возврат в начальную точку движения, делаем всю комнату просмотренной (при помощи массива логического типа). Затем ищем клетку, в которой ещё не были и делаем её начальной точкой движения.

    Uses crt;

    Const n=100;

    X:array[0..3]of -1..1=(0,-1,0,1); {массив координат перемещения по

    Y:array[0..3]of -1..1=(-1,0,1,0); клеткам. Индекс элемента массива

    Type Mas=array[0..n,0..n]of Integer; соответствует степени двойки}

    var A:mas;

    B:array[0..n,0..n]of Boolean;

    m,p,col,rooms,indexX,indexY:integer;

    procedure Init(Z:string); {заполнение из входного файла массива, представляющего цифровую карту музея}

    Var f:text;

    i,j:integer;

    Begin

    Assign(f,z);

    Reset(f);

    ReadLn(f,m,p);

    For i:=1 to m do

    begin

    For j:=1 to p do

    Read(f,A[i,j]);

    ReadLn(f);

    end;

    FillChar(B,SizeOf(B),true);

    For i:=1 to m do

    For j:=1 to p do

    B[i,j]:=false;

    Close(f);

    end;

    function Degree2(i:integer):integer; {функция, вычисляющая i–ую степень двойки}

    var j,t:integer;

    begin

    t:=1;

    For j:=1 to i do

    t:=t*2;

    Degree2:=t;

    end;

    Procedure Solve(i,j:integer);

    Var k:integer;

    begin

    k:=3;

    While k>=0 do

    begin

    If A[i,j] направлении}

    begin

    If not B[i+X[k],j+Y[k]] then {определяем, заходили ли мы в клетку ранее}

    begin

    Inc(col); {учитываем клетку в общей площади комнаты}

    B[i,j]:=true; {отмечаем, что в текущей клетке мы уже были}

    Solve(i+X[k],j+Y[k]); {переходим в следующую клетку}

    B[i,j]:=False; {делаем клетку, в которой последний раз были не просмотренной, чтобы рассмотреть другие варианты хода из неё в другую клетку}

    end;

    end

    Else A[i,j]:=A[i,j]-Degree2(k);

    Dec(k);

    end;

    end;

    procedure Prosmotr; {данная процедура отмечает уже просмотренную комнату}

    var i,j:integer;

    begin

    For i:=1 to m do

    For j:=1 to p do

    If A[i,j]=0 then B[i,j]:=True;

    end;

    begin

    clrscr;

    Init('A:museum.txt');

    rooms:=0;

    For indexX:=1 to m do {ищем ранее не просмотренную клетку}

    For indexY:=1 to p do

    If not B[indexX,indexY] Then

    begin

    col:=1;

    Inc(rooms);

    Solve(indexX,indexY);

    Write(Col,' '); {вывод площади только что просмотренной комнаты}

    Prosmotr;

    end;

    WriteLn;

    WriteLn(rooms); {вывод количества комнат}

    readkey;

    end.

    держи...

  4. не по теме, но:

    И пошли российские флудеры и флудоделы флудить во флуде без устали. И зафлудили весь флуд флудами. И флуданулся раздел флуд от флудерства флудеров. И развилась у них болезнь флудофилия. И пришлось флудорам направиться к доктору флудопеду. И сказал флудопед флудофилам: "А нехрена было флудить без меры и зафлуживать весь флуд флудами!" и офлудели от его слов флудофилы и превратились из флудофилов во флудерастов. И направил флудопед флудорастов к врачу флудологу. Флудолог взял флудоскоп и зделал флудерастам флудоскопию. И выяснил флудолог, что они не флудорасты, а флудоголики. И прописал флудолог флудоголикам антифлудин и протифофлудные клизьмы...

×
×
  • Создать...