//Agata Majewska 16.12.2022
//Zadanie Lamigowka
#include <iostream>
//#include <string.h>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n,m,k;
cin>>n>>m;
char tab[n][m];
int i,j;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
cin>>tab[i][j];
}
}
cin>>k;
char t;
int p; //pusty
while(k>0){
cin>>t;
switch(t){
case 'G':
//
p=0;
for(j=0;j<m;j++){
p=0;
for(i=0;i<n;i++){
if(tab[i][j]=='.'){
//nic
}
else{
if(p!=i){
tab[p][j]=tab[i][j];
tab[i][j]='.';
}
p++;
}
}
}
break;
case 'D':
//
//p=n-1;
for(j=0;j<m;j++){
p=n-1;
for(i=n-1;i>=0;i--){
if(tab[i][j]=='.'){
//nic
}
else{
if(p!=i){
tab[p][j]=tab[i][j];
tab[i][j]='.';
}
p--;
}
}
}
break;
case 'L':
//
for(i=0;i<n;i++){
p=0;
for(j=0;j<m;j++){
if(tab[i][j]=='.'){
//nic
}
else{
if(p!=j){
tab[i][p]=tab[i][j];
tab[i][j]='.';
}
p++;
}
}
}
break;
case 'P':
for(i=0;i<n;i++){
p=m-1;
for(j=m-1;j>=0;j--){
if(tab[i][j]=='.'){
//nic
}
else{
if(p!=j){
tab[i][p]=tab[i][j];
tab[i][j]='.';
}
p--;
}
}
}
break;
}
k--;
}
for(i=0;i<n-1;i++){
for(j=0;j<m;j++){
cout<<tab[i][j];
}
cout<<"\n";
}
for(j=0;j<m;j++){
cout<<tab[i][j];
}
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | //Agata Majewska 16.12.2022 //Zadanie Lamigowka #include <iostream> //#include <string.h> using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int n,m,k; cin>>n>>m; char tab[n][m]; int i,j; for(i=0;i<n;i++){ for(j=0;j<m;j++){ cin>>tab[i][j]; } } cin>>k; char t; int p; //pusty while(k>0){ cin>>t; switch(t){ case 'G': // p=0; for(j=0;j<m;j++){ p=0; for(i=0;i<n;i++){ if(tab[i][j]=='.'){ //nic } else{ if(p!=i){ tab[p][j]=tab[i][j]; tab[i][j]='.'; } p++; } } } break; case 'D': // //p=n-1; for(j=0;j<m;j++){ p=n-1; for(i=n-1;i>=0;i--){ if(tab[i][j]=='.'){ //nic } else{ if(p!=i){ tab[p][j]=tab[i][j]; tab[i][j]='.'; } p--; } } } break; case 'L': // for(i=0;i<n;i++){ p=0; for(j=0;j<m;j++){ if(tab[i][j]=='.'){ //nic } else{ if(p!=j){ tab[i][p]=tab[i][j]; tab[i][j]='.'; } p++; } } } break; case 'P': for(i=0;i<n;i++){ p=m-1; for(j=m-1;j>=0;j--){ if(tab[i][j]=='.'){ //nic } else{ if(p!=j){ tab[i][p]=tab[i][j]; tab[i][j]='.'; } p--; } } } break; } k--; } for(i=0;i<n-1;i++){ for(j=0;j<m;j++){ cout<<tab[i][j]; } cout<<"\n"; } for(j=0;j<m;j++){ cout<<tab[i][j]; } return 0; } |
English