golovins3
?>

Петя играет в онлайн-игру, одной из особенностей игры является возможность собрать коллекцию уникальных карт с героями игры. Для того, чтобы получить карту, нужно зайти на специальную страницу. Петя заходил на эту страницу n раз в течение дня. Однако он заметил, что на этой странице не всегда появляется новая карта. Как выяснилось, новая карта появляется на странице через x секунд после того, как Петя забрал предыдущую карту. По данному числу x и списку моментов времени, когда Петя заходил на страницу, определите, сколько карт он смог собрать. Входные данные Первая строка содержит числа n и x (1≤n≤100, 1≤x≤86400 Следующие n строк содержат моменты времени, когда Петя заходил на страницу. Время задано в формате часы:минуты:секунды, часы, минуты и секунды заданы двумя цифрами. Все времена различны, отсортированы по возрастанию и относятся к одним суткам (от 00:00:00 до 23:59:59). Выходные данные Выведите одно число — число карт, которые собрал Петя за день. Пример входные данные 5 300 12:00:00 12:04:30 12:05:00 12:15:32 12:15:33 выходные данные найти ошибек вылает непраивльный ответ на 2 тесте вот мой код #include <bits/stdc++.h> using namespace std; int main () { long long n, m, i, j, x, k=0; cin»n»x; char z; long long a[n], b[n], c[n], h[n]; for(i=0; i<n; i++) { cin»a[i]»z»b[i]»z»c[i]; h[i]=0; h[i]=((a[i]*60)*60)+(b[i]*60)+c[i]; } i=0; j=0; while(i<n-1) { while(h[j]-h[i]<300 and j<n-1) {j++;} k++; i=j; } if(n==1) { cout«"1"; return 0; } cout«k; }​

Информатика

Ответы

yorestov
Prime := { Получаем первое слово из последовательности }; 
while { не конец последовательности (не известно от куда аффтар получает слова ) } do 
  begin 
    Slovo := { Получаем очередное слово последовательности }; 
    if Length(Slovo) <= Length(Prime) then 
      begin 
        CopyPrime := Prime; 
        N := 1; 
        while (N <= Length(Slovo)) and (Pos(Slovo[N], CopyPrime) > 0 do 
          begin 
            Delete(CopyPrime, Pos(Slovo[N], CopyPrime), 1); 
            Inc(N); 
          end; 
        if N > Length(Slovo) then 
          { Slovo можно получить из первого слова } 
        else 
          { нельзя получить Slovo из первого слова } 
      end; 
  end; 
tihonovrv477

Задача1

массив определи как array[];

чтобы посчитать, просто используй счетчик, но сначала инициализируй переменную, которая содержит ответ задачи:

int n;

array [n];

int answer;

for (i=0, i < n, i++)

{

     if (array[i] == 2)

         answer++;

std::cout<<answer;

Как то так

 

Задача2 

 

array[n];

 

 

for (int i =1, i < n, i++)

{

 if (array[0] >= array[i])

    array[0] = array[i];

}

std::cout << array[0];

//Это было решение первого пункта

int first;

int last

bool positive;

while (positive == false )

{

   for (int i = 0; i < n; i++)

     {

        if (array[i] > 0)

        {

          positive = true;

          first = i;

          array[i] = -1;

      }

}

while (positive == false )

{

   for (int i = 0, i < n, i++)

     {

        if (array[i] > 0)

        {

          positive = true;

          last = i;

      }

}

 

 

int summ

for (int i = first, i < last, i++)

{

  summ += array[i];

}

 std::cout<<summ; // ответ на 2 пункт

// ПРеобразую

newarray [n];

int a = 0;

for (int i = 0, i < n, i++)

{      

 if (array[i] == 0)  

   {      

newarray[a] = array[i];      

 a++;      

    }  

for (int i = 0, i < n, i++)

{    

     if (array[i] != 0)    

         {        

          newarray[a] = array[i];

         a++;

        }

}

std::cout<< newarray;

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Петя играет в онлайн-игру, одной из особенностей игры является возможность собрать коллекцию уникальных карт с героями игры. Для того, чтобы получить карту, нужно зайти на специальную страницу. Петя заходил на эту страницу n раз в течение дня. Однако он заметил, что на этой странице не всегда появляется новая карта. Как выяснилось, новая карта появляется на странице через x секунд после того, как Петя забрал предыдущую карту. По данному числу x и списку моментов времени, когда Петя заходил на страницу, определите, сколько карт он смог собрать. Входные данные Первая строка содержит числа n и x (1≤n≤100, 1≤x≤86400 Следующие n строк содержат моменты времени, когда Петя заходил на страницу. Время задано в формате часы:минуты:секунды, часы, минуты и секунды заданы двумя цифрами. Все времена различны, отсортированы по возрастанию и относятся к одним суткам (от 00:00:00 до 23:59:59). Выходные данные Выведите одно число — число карт, которые собрал Петя за день. Пример входные данные 5 300 12:00:00 12:04:30 12:05:00 12:15:32 12:15:33 выходные данные найти ошибек вылает непраивльный ответ на 2 тесте вот мой код #include <bits/stdc++.h> using namespace std; int main () { long long n, m, i, j, x, k=0; cin»n»x; char z; long long a[n], b[n], c[n], h[n]; for(i=0; i<n; i++) { cin»a[i]»z»b[i]»z»c[i]; h[i]=0; h[i]=((a[i]*60)*60)+(b[i]*60)+c[i]; } i=0; j=0; while(i<n-1) { while(h[j]-h[i]<300 and j<n-1) {j++;} k++; i=j; } if(n==1) { cout«"1"; return 0; } cout«k; }​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

shoora
siyaniemoskva
ЮрьевичКарпова1564
emilmishin1032
klimenokvapeshop1408
Polina780
Андреевич-Екатерина1974
lovel24
Wlad967857
jagerlayf
olelukoya4
manu95957
Ferrigen
Kolokolnikova DANIIL179
antongenfon