BLT Seat Distancing
Kembali ke /editorialTingkat Kesulitan | Easy |
Kategori | Ad Hoc |
Pranala Soal | Pranala Soal |
Pranala Solusi | Solusi 1, Solusi 2 |
Pada soal ini, kita cukup mencetak apa yang diminta soal dengan menggunakan perulangan sederhana.
Salah satu cara yang dapat memudahkan adalah dengan menyimpan dua buah variable string sepanjang $x$ yang berisi *
dan ` ` (spasi). Dengan begitu, kita dapat menghilangkan satu level perulangan.
#include <bits/stdc++.h>
using namespace std;
int main() {
int x, p, l;
cin >> x >> p >> l;
string seat = string(x, '*'); // '*' sebanyak x kali
string space = string(x, ' '); // ' ' sebanyak x kali
for (int i = 0; i < p; ++i) {
for (int j = 0; j < x; ++j) {
for (int k = 0; k < l; ++k) {
// saat i+k genap, keluarkan '*'
// saat i+k ganjil, keluarkan ' '
if ((i+k) % 2 == 0) {
cout << seat;
} else {
cout << space;
}
}
cout << endl;
}
}
}