Detective Pikaptcha ep1 – omówienie zadania z CodinGame – programowanie gry

Detective Pikaptcha ep1 – omówienie zadania z CodinGame – programowanie gry

Szczegółowe omówienie zadania Detective Pikaptcha ep1 – episode 1:

Link do powyższego omówienia zadania Detective Pikaptcha ep1:
https://youtu.be/xJRS5tEJ6lI?t=2891

Podsumowanie rozwiązania:
https://youtu.be/xJRS5tEJ6lI?t=5032

——-
Link do zadania Detective Pikaptcha ep1:
https://www.codingame.com/training/easy/detective-pikaptcha-ep1

Zadanie Detective Pikaptcha ep1 wymaga użycia tablicy napisów (w C++ tablicy stringów) i analizy sąsiednich pól w tej tablicy.

Zadanie Detective Pikaptcha ep1 pochodzi z platformy CodinGame.
CodinGame to miejsce gdzie uczymy się programować bawiąc się grami.
Kodować możemy używając dowolnego języka programowania.

Jednocześnie CodinGame tworzy dla nas gotowe CV które jest dostępne dla potencjalnych pracodawców:
https://youtu.be/yUh6XdlGm14?t=3702

——–
Jak się uczyć na podstawie tego zadania?
https://youtu.be/QgLyXYmFQeU?t=2019
Pamiętaj by zajrzeć max 1 raz – wtedy się rozwijasz:
https://youtu.be/pkLXuuOe_qA?t=3625

——-
Kod C++ programu Detective Pikaptcha ep1, który jest omówiony w powyższym filmie i który otrzymuje 100%


#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

/**
 * Auto-generated code below aims at helping you parse
 * the standard input according to the problem statement.
 **/

int main()
{
    int width, x;
    int height, y;
    cin >> width >> height; cin.ignore();
    string board[height+1];
    string y_line;
    int neighbors_with_0;
    for (y = 1; y <= height; y++) {
        cin >> board[y]; cin.ignore();
    }
//idziemy po wszystkich wierszach
    for (int y = 1; y <= height; ++y) {
       y_line = ""; //czyscimy linie wynikowa
//dla wiersza idziemy po wszystkich polach pklnaszy
       for (int x = 0; x < width; ++x) {
          if ( board[y][x] == '#' ) {
             y_line = y_line + "#"; 
             continue;
          }
//jesli tu jestesmy to znaczy ze znak nie jest #
//jesli tu jestesmy to znaczy ze znak jest 0
//liczymy ile mamy sasiadow ktorzy sa zerami - I W RAMACH PLANSZY    
          neighbors_with_0 = 0;
          if ( (x-1) >= 0 )
             if ( board[y][x-1] == '0' )
                ++neighbors_with_0;
          if ( (x+1) < width )
             if ( board[y][x+1] == '0' )
                ++neighbors_with_0;
         if ( (y-1) >= 1 )
             if ( board[y-1][x] == '0' )
                ++neighbors_with_0;
         if ( (y+1) <= height )
             if ( board[y+1][x] == '0' )
                ++neighbors_with_0;
         y_line = y_line + to_string(neighbors_with_0); 
       }
    cout << y_line << endl;
    }
}
Kod C++ programu Detective Pikaptcha ep1, który jest omówiony w powyższym filmie i który otrzymuje 100%

 

Nie dodano jeszcze komentarza, rozpocznij dyskusję pierwszy.

Dodaj komentarz