알고리즘 문제풀이/BOJ
-
BOJ 6603번 로또 문제 자바(java) 풀이 백준 온라인 저지(BOJ) 6603 로또 자바 풀이 백준6603번 로또 깃허브 주소 문제풀이 이 문제는 dfs를 이용하면 정말 간단히 풀 수 있습니다. 문제 푸는데 20분 정도 걸렸습니다. while문을 돌면서 값을 입력 받고 파싱(parsing)을 한다. 파싱 한 첫 문자가 0이면 while문을 빠져나오며 종료한다. 파싱한 문자 set을 arraylist에 담는다 dfs 함수를 이용해 모든 조합을 구한다. 출력 형식에 맞게 예외 처리를 하여 버퍼에 담아 출력한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.In..
[백준 온라인 저지(BOJ)] 6603번 로또 자바 풀이 (dfs)BOJ 6603번 로또 문제 자바(java) 풀이 백준 온라인 저지(BOJ) 6603 로또 자바 풀이 백준6603번 로또 깃허브 주소 문제풀이 이 문제는 dfs를 이용하면 정말 간단히 풀 수 있습니다. 문제 푸는데 20분 정도 걸렸습니다. while문을 돌면서 값을 입력 받고 파싱(parsing)을 한다. 파싱 한 첫 문자가 0이면 while문을 빠져나오며 종료한다. 파싱한 문자 set을 arraylist에 담는다 dfs 함수를 이용해 모든 조합을 구한다. 출력 형식에 맞게 예외 처리를 하여 버퍼에 담아 출력한다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.In..
2020.02.05 -
BOJ 6568번 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 문제 자바(java) 풀이 랭크 : 골드5 백준 온라인 저지(BOJ) 6568번 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 문제 자바 풀이 백준 6568번 거울 설치 추가 예제 입출력 문제정리 각 명령어의 길이는 1바이트 상위 3비트는 명령어, 하위 5비트는 피연산자 피 연산자는 언제나 메모리 값 피 연산자가 필요하지 않는 명령도 있다. 이때 하위 5비트는 무의미 명령어를 실행하기 전에 pc값을 1 증가시킨다. 키 포인트 입력으로 주어진 이진수 형태의 문자를 십진수 정수로 변환 정답 출력시 십진수 정수형을 이진수 형태의 문자로 변환 비트 연산을 통해 명령어와 주소 분리 테스트 케이스가 한 셋트가 아닌 여러 셋트가 입..
[백준 온라인 저지(BOJ)] 6568번 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 자바(java) 풀이BOJ 6568번 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 문제 자바(java) 풀이 랭크 : 골드5 백준 온라인 저지(BOJ) 6568번 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 문제 자바 풀이 백준 6568번 거울 설치 추가 예제 입출력 문제정리 각 명령어의 길이는 1바이트 상위 3비트는 명령어, 하위 5비트는 피연산자 피 연산자는 언제나 메모리 값 피 연산자가 필요하지 않는 명령도 있다. 이때 하위 5비트는 무의미 명령어를 실행하기 전에 pc값을 1 증가시킨다. 키 포인트 입력으로 주어진 이진수 형태의 문자를 십진수 정수로 변환 정답 출력시 십진수 정수형을 이진수 형태의 문자로 변환 비트 연산을 통해 명령어와 주소 분리 테스트 케이스가 한 셋트가 아닌 여러 셋트가 입..
2020.02.04 -
BOJ 1713번 후보 추천하기 문제 자바(java) 풀이 랭크 : 골드5 백준 온라인 저지(BOJ) 1713번 후보 추천하기 문제 자바 풀이 백준 1713번 후보 추천하기 github 주소 후보 추천하기 코드 문제정리 특정 학생을 추천 하면 반드시 사진 틀에 걸린다. 비어있는 사진 틀이 없는 경우, 현재 까지 추천 횟수가 가장 적은 학생을 제거한다. 2.1 가장 적은 학생이 여러명일 경우 가장 오래전에 게시한 학생을 제거한다. 현재 사진이 게시된 학생이 추천을 받은 경우 추천수만 증가시킨다. (시간 갱신 안됨) 사진틀에 게시된 학생이 삭제되는 경우 다시 추천을 받아도 이전 추천 수가 남아있지 않는다( 추천 받은 수 0으로 초기화 ) ArrayList 정렬하는 방법 Comparable의 compareTo..
[백준 온라인 저지(BOJ)] 1713번 후보 추천하기 (정렬) 자바 풀이BOJ 1713번 후보 추천하기 문제 자바(java) 풀이 랭크 : 골드5 백준 온라인 저지(BOJ) 1713번 후보 추천하기 문제 자바 풀이 백준 1713번 후보 추천하기 github 주소 후보 추천하기 코드 문제정리 특정 학생을 추천 하면 반드시 사진 틀에 걸린다. 비어있는 사진 틀이 없는 경우, 현재 까지 추천 횟수가 가장 적은 학생을 제거한다. 2.1 가장 적은 학생이 여러명일 경우 가장 오래전에 게시한 학생을 제거한다. 현재 사진이 게시된 학생이 추천을 받은 경우 추천수만 증가시킨다. (시간 갱신 안됨) 사진틀에 게시된 학생이 삭제되는 경우 다시 추천을 받아도 이전 추천 수가 남아있지 않는다( 추천 받은 수 0으로 초기화 ) ArrayList 정렬하는 방법 Comparable의 compareTo..
2020.02.03 -
안녕하세요 호호만두에요 이번에는 N과M 시리즈중 하나인 BOJ 15663번 N과M 9번째 문제 풀어 봅시다!! 우선 N과M 9번째 문제에 앞서서 다른 N과M 문제를 전혀 풀지 않았다면 아래 글을 읽고 와주세요!! N과M1번 BOJ N과 M(9) 링크 BOJ15663번 N과M9 이 문제도 역시 다른 N과 M 문제와 많이 비슷합니다 그냥 backtracking(백트래킹)으로 구해주면 되요 저는 이 문제도 1번 문제처럼 _순열_을 구하는 방식으로 풀었어요 주의 할 점 string을 sorting 하는 것은 숫자를 sorting 하는 것과 다르다 예를들어 입력이 아래와 같이 주어졌다고 합시다 2 2 9 10그러면 순열을 뽑아서 넣고 sorting 하게 되면 다음과 같이 나옵니다 10 9 9 10왜냐하면 10하고..
[백준 알고리즘(BOJ)] 15663번 N과M (9) 자바(java) 풀이 (LinkedHashSet 이용)안녕하세요 호호만두에요 이번에는 N과M 시리즈중 하나인 BOJ 15663번 N과M 9번째 문제 풀어 봅시다!! 우선 N과M 9번째 문제에 앞서서 다른 N과M 문제를 전혀 풀지 않았다면 아래 글을 읽고 와주세요!! N과M1번 BOJ N과 M(9) 링크 BOJ15663번 N과M9 이 문제도 역시 다른 N과 M 문제와 많이 비슷합니다 그냥 backtracking(백트래킹)으로 구해주면 되요 저는 이 문제도 1번 문제처럼 _순열_을 구하는 방식으로 풀었어요 주의 할 점 string을 sorting 하는 것은 숫자를 sorting 하는 것과 다르다 예를들어 입력이 아래와 같이 주어졌다고 합시다 2 2 9 10그러면 순열을 뽑아서 넣고 sorting 하게 되면 다음과 같이 나옵니다 10 9 9 10왜냐하면 10하고..
2020.01.26 -
백준 온라인 저지(BOJ) 3954번 Brainfuck 문제 안녕하세요 호호만두에요 이번에는 백준 온라인 저지(BOJ)의 3954번 문제인 Brainfuck을 풀어봤어요 이름이 너무 웃기지 않나요?? 들어가보면 사실 Brainf**k로 표현되어있어요 찾아보니까 이런 단어가 존재하더라구요??? 그게 더 신기... 알고보니까 93년도에 우어반 뮐러라는 사람이 만든 프로그래밍 언어라고 ㅋㅋㅋㅋㅋㅋ 이름 한 번 잘지었네 위키에서 명령어들 같은거 보면 그대로 규칙이 그대로 나왔어요 궁금하신 분은 쭉 훑어보세요 brainfuck 이란?? 이 문제는 골드1로 분류되어 있는 난이도가 조금 있는 문제였어요 BOJ 3954번 Brainfuck 이 문제의 유형을 분류하자면 주어진 사항을 잘 읽고 구현하는 시뮬레이션 그리고 ..
[백준 온라인 저지(BOJ)] 3954번 Brainfuck 자바(java) 풀이백준 온라인 저지(BOJ) 3954번 Brainfuck 문제 안녕하세요 호호만두에요 이번에는 백준 온라인 저지(BOJ)의 3954번 문제인 Brainfuck을 풀어봤어요 이름이 너무 웃기지 않나요?? 들어가보면 사실 Brainf**k로 표현되어있어요 찾아보니까 이런 단어가 존재하더라구요??? 그게 더 신기... 알고보니까 93년도에 우어반 뮐러라는 사람이 만든 프로그래밍 언어라고 ㅋㅋㅋㅋㅋㅋ 이름 한 번 잘지었네 위키에서 명령어들 같은거 보면 그대로 규칙이 그대로 나왔어요 궁금하신 분은 쭉 훑어보세요 brainfuck 이란?? 이 문제는 골드1로 분류되어 있는 난이도가 조금 있는 문제였어요 BOJ 3954번 Brainfuck 이 문제의 유형을 분류하자면 주어진 사항을 잘 읽고 구현하는 시뮬레이션 그리고 ..
2020.01.25 -
안녕하세요 호호만두에요 이번에는 백준 온라인 저지(BOJ)의 10826번 피보나치 수4를 자바로 풀어봅시다 https://www.acmicpc.net/problem/10826 10826번: 피보나치 수 4 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 www.acmicpc.net 이 문제의 n이 최..
[백준 온라인 저지(BOJ)] 10826번 피보나치 수 4 자바(java) 풀이 ( BigInteger 이용)안녕하세요 호호만두에요 이번에는 백준 온라인 저지(BOJ)의 10826번 피보나치 수4를 자바로 풀어봅시다 https://www.acmicpc.net/problem/10826 10826번: 피보나치 수 4 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 www.acmicpc.net 이 문제의 n이 최..
2020.01.24