Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- #include <stdlib.h>
- #include <string.h>
- #include <iostream>
- int qk=0,qb=0;
- char data[501][501];
- void banjir(int arah,int a,int b,int maxa,int maxb,char x){
- if(data[a][b]=='.'){
- data[a][b]=x;
- if(x=='K')qk++;else qb++;
- if(arah!=1)if(a-1>=0)banjir(3,a-1,b,maxa,maxb,x);
- if(arah!=2)if(b+1<=maxb)banjir(4,a,b+1,maxa,maxb,x);
- if(arah!=3)if(a+1<=maxa)banjir(1,a+1,b,maxa,maxb,x);
- if(arah!=4)if(b-1>=0)banjir(2,a,b-1,maxa,maxb,x);
- }
- }
- int main()
- {
- int a,b;
- int ak,bk,ab,bb;
- scanf("%i %i",&a,&b);
- //for(int q=0;q<80;q++)for(int p=0;p<80;p++)data[q][p]='x';
- for(int q=0;q<a;q++){
- std::cin.getline(data[q],b+1);
- }
- for(int q=0;q<a;q++)for(int p=0;p<b;p++)
- if(data[q][p]=='K'){
- ak=q;
- bk=p;
- }else if(data[q][p]=='B'){
- ab=q;
- bb=p;
- }
- banjir(1,ak+1,bk,a-1,b-1,'K');
- banjir(2,ak,bk-1,a-1,b-1,'K');
- banjir(3,ak-1,bk,a-1,b-1,'K');
- banjir(4,ak,bk+1,a-1,b-1,'K');
- banjir(1,ab+1,bb,a-1,b-1,'B');
- banjir(2,ab,bb-1,a-1,b-1,'B');
- banjir(3,ab-1,bb,a-1,b-1,'B');
- banjir(4,ab,bb+1,a-1,b-1,'B');
- for(int q=0;q<a;q++)printf("%s\n",data[q]);
- /*
- if(qk==qb){
- printf("SERI\n");
- }else if(qk>qb){
- printf("K %i\n",qk-qb);
- }else{
- printf("B %i\n",qb-qk);
- }*/
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement