앞의 문제들 중 비슷한 알고리즘이 있던 것 같지만, 같은 건 없다고 생각해서 올립니다. 문제를 푸는데 많은 approach가 있을 듯 싶습니다. 이 문제의 핵심은 비트 연산을 얼마나 잘 이해하고 있냐이기 때문에 비트 연산으로 풀어주세요.
input은 int n을 입력 받아 첫번째 row는 (n-1)의 O와 X, 두번째 row는 (n-2)의 O와 XX, 세번째 row는 (n-3)의 0와 XXX... n번째 row는 n의 X을 출력하시오.
입력 예시: 6
출력 예시:
OOOOOX
OOOOXX
OOOXXX
OOXXXX
OXXXXX
XXXXXX
(n=>console.log(Array.from(Array(n),(_,i)=>"O".repeat(n-i-1)+"X".repeat(i+1)).join("\n")))(6);
2017年06月18日 03:04
function xoFunc(n){
let x = "X";
let o = "O";
for(let i = 1; i<n+1; i++){
let repeat = o.repeat(n-i)+x.repeat(i)
console.log(repeat);
}
}
xoFunc(6)
repeat()를 사용하여 해결했습니다.
2018年05月21日 01:50
풀이 작성
코딩도장은 프로그래밍 문제풀이를 통해서 코딩 실력을 수련(Practice)하는 곳입니다.