[백준/JS] 1436

코린·2022년 6월 29일
1

알고리즘

목록 보기
5/44
post-thumbnail

일단 제목이 맘에 들어서 선택한 문제입니다.. 영화감독 숌

근데 이 솜녀석.. 사람이 꼬여있네여.. 그냥 제목 1,2,3으로 지으면 될 것이지.. 암튼 이 꼬인녀석을 위해서 코드 짜봅시다..



처음엔 어떤 규칙이 있을까 하고 고민을 해봤네여.. 근데 아무리 이 짱구를 굴려봐도...도당체 나는 못찾겠단 말입니다....

나?


그래서 전 냉큼 알고리즘 분류를 열어보았어요

브투르포스...? 후얼유.... 나만 몰랐다면...죄송하지만... 일단 전 몰라여.. 그래서 냉큼 또 검색에 들어갔습니다.

브루트 포스(brute force), 키 전수조사(exhaustive key search) 또는 무차별 대입(無差別代入)은 조합 가능한 모든 문자열을 하나씩 대입해 보는 방식으로 암호를 해독하는 방법이다.

걍 노가다라는 거군요..!!^^ 앞으로 노가다 코드를 짤 때는 우리 있어보이게 브루트포스 알고뤼뜸~을 사용하자 이렇게 말해봐요!^^ 헤헤


그러면 결론은 이 문제는 하나씩 모든 숫자를 다 살펴본 다음에 그 숫자에 666이 포함되어 있다면 값을 출력해주면 되는 문제입니다!

이제 입력값 받는 방법은 다 아시겠죠..?

//입력받는 부분
const fs=require('fs');
var input=fs.readFileSync('example.txt','utf-8').toString();

제목의 초기값은 666으로 설정해줍니다.

var title=666;

이제 input 값에 따라서 666이 들어간 숫자를 출력해주어야 합니다. 그러면 666이 들어간 숫자가 나오면 input 값을 -1 해주면 되겠죠? 그러고 input값이 0이 될 경우 출력을 해주면 되겠죠?

while(true){
    
    if(title.toString().includes('666')){
        input-=1;
        if(input==0)
            break;
    }
    
    title+=1;
    
}

여기서 보면 includes 함수는 해당 문자열이 있을 경우 true 값을 반환합니다.

따란 전체코드 나갑니다

//입력받는 부분
const fs=require('fs');
var input=fs.readFileSync('/dev/stdin','utf-8').toString();

var title=666;

while(true){
    
    if(title.toString().includes('666')){
        input-=1;
        if(input==0)
            break;
    }
    
    title+=1;
    
}

console.log(title);

n이 2일 경우

n이 500일 경우

오홍홍 결과가 아주 잘나오네요..? 답을 내러가볼까여..?
훗...오늘은 파일입출력 주소값 안 바꾸는 실수는 하지 않았답니다..껄껄


따라디링둥 결과는~~~!!!
.
.
.

맞았군요..헤헤

profile
안녕하세요 코린입니다!

0개의 댓글