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
–
#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%