일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- rabbitmq 싱글톤
- kotiln functional interface
- 전략 패턴이란
- 백준 특정한 최단 경로
- 자바 1676
- 안정해시
- 자바 백준 팩토리얼 개수
- 익명 객체 @transactional
- mongodb lookup
- go
- ipfs bean
- 백준 2252 줄세우기
- java 1509
- spring mongodb switch
- nodejs rabbitmq
- 백준 연결요소 자바
- java 팩토리얼 개수
- kotiln const val
- Java Call By Refernce
- ipfs singletone
- Spring ipfs
- java 백준 1509
- kotiln const
- spring mongoTemplate
- spring mongodb
- java 파티
- spring mongoTemplate switch
- 백준 1504 java
- java 1238
- javav 1676
Archives
- Today
- Total
공부 흔적남기기
프로그래머스 [1차] 비밀지도 본문
728x90
반응형
class Solution {
public String[] solution(int n, int[] arr1, int[] arr2) {
// 일단 지도1, 지도 2, 정답지도를 0으로 채워진 n*n배열 만들기
int[][] map1 = new int[n][n];
int[][] map2 = new int[n][n];
int[][] realMap = new int[n][n];
// arr1과 arr2 2진법으로 된 암호를 풀어서 지도1과 지도2에 저장함
for (int i = 0; i < n; i++) {
map1[i] = binary(arr1[i], n);
map2[i] = binary(arr2[i], n);
}
//map1과 map2의 값을 각각 비교하면서 둘다 0이라면 0 하나라도 1이라면 정답지도에 #을 넣어줌
for(int i =0; i<n; i++){
for(int j=0; j<n; j++){
if(map1[i][j] ==1 || map2[i][j] ==1){
realMap[i][j] = 1;
}else {
realMap[i][j] = 0;
}
}
}
String[] answer = new String[n];
int i = 0;
String str = "";
//진짜 지도를 배열을 통해 돌면서 1이라면 #을 넣어주고
//0이라면 공백을 채워줌
for (int[] ints : realMap) {
str = "";
for (int anInt : ints) {
if(anInt ==1){
str += "#";
}else{
str += " ";
}
}
answer[i] = str;
System.out.println(str);
i++;
}
return answer;
}
//숫자를 2진수로 바꿔주는 함수
public int[] binary(int n, int m) {
//n은 숫자를 받고 행 혹은 열의 길이를 받음
int[] tmp = new int[m];
int i = 0;
//이 부분이 2진법으로 바꿔주는 부분인데
//직관적으로 이해가 잘 안되서
//그냥 외워서 익숙해져버림
while (n != 0) {
tmp[m - 1 - i] = n % 2;
n = n / 2;
i++;
}
for (int i1 : tmp) {
System.out.print(i1);
}
System.out.println();
return tmp;
}
}
문제 : https://programmers.co.kr/learn/courses/30/lessons/17681
코딩테스트 연습 - [1차] 비밀지도
비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다
programmers.co.kr
728x90
반응형
'코테 > 프로그래머스' 카테고리의 다른 글
프로그래머스 [1차] 다트게임 (0) | 2022.01.17 |
---|---|
프로그래머스 키패드 누르기 (0) | 2022.01.17 |
프로그래머스 폰켓몬 (0) | 2022.01.17 |
프로그래머스 체육복 (0) | 2022.01.17 |
프로그래머스 실패율 (0) | 2022.01.17 |