C++/programmers 코딩테스트(level 1) C++

[C/C++] programmers Level 1 [1차] 비밀지도

CE : 하랑 2023. 10. 14. 16:52

 

 

 

 

코드

 

#include <string>
#include <vector>

using namespace std;

string bit2(int num, int len){ // 10진법 2진법으로 변환
    string s="";
    
    for(int i=0;i<len;i++){ // n 만큼의 길이로 표시
        s=to_string(num%2)+s; // 역순 표시
        num=num/2;
    }
    
    return s;
}

vector<string> solution(int n, vector<int> arr1, vector<int> arr2) {
    vector<string> answer;
    
    for(int i=0;i<n;i++){
        string a1=bit2(arr1[i],n);
        string a2=bit2(arr2[i],n);
        string check="";
        
        for(int j=0;j<n;j++){
            if(a1[j]=='1' || a2[j]=='1'){ 
                check=check+'#';
            }else{
                check=check+' ';
            }
        }
        
        answer.push_back(check);
    }
    
    return answer;
}