본문 바로가기
728x90
반응형

전체 글602

[백준/java] 1904번: 01타일 - 동적계획법(DP) 문제 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이의 공부를 방해하기 위해 0이 쓰여진 낱장의 타일들을 붙여서 한 쌍으로 이루어진 00 타일들을 만들었다. 결국 현재 1 하나만으로 이루어진 타일 또는 0타일을 두 개 붙인 한 쌍의 00타일들만이 남게 되었다. 그러므로 지원이는 타일로 더 이상 크기가 N인 모든 2진 수열을 만들 수 없게 되었다. 예를 들어, N=1일 때 1만 만들 수 있고, N=2일 때는 00, 11을 만들 수 있다. (01, 10은 만들 수 없게 되었다.) 또한 N=4일 때는 0011, 0000, 1001, 1100, 1111 등 총 5개의 2.. 2021. 5. 28.
[백준/java] 9461 번: 파도반 수열 - 동적 프로그래밍(DP : Dynamic Programming) 문제 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 길이를 k라 했을 때, 그 변에 길이가 k인 정삼각형을 추가한다. 파도반 수열 P(N)은 나선에 있는 정삼각형의 변의 길이이다. P(1)부터 P(10)까지 첫 10개 숫자는 1, 1, 1, 2, 2, 3, 4, 5, 7, 9이다. N이 주어졌을 때, P(N)을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, N이 주어진다. (1 ≤ N ≤ 100) 출력 각 테스트 케이스마다 P(N)을 출력한다. ※ 문제 도출 과정 (1) 일단 점화식 .. 2021. 5. 28.
[jQuery] 체크박스 전체 선택, 전체 해제, 모든 항목 체크 시 전체 선택 체크박스 선택되게 하기 간만에 하는 jQuery 포스팅. 바로 본론으로 가봅시다. $(document).ready(function() { $("#cbx_chkAll").click(function() { if($("#cbx_chkAll").is(":checked")) $("input[name=chk]").prop("checked", true); else $("input[name=chk]").prop("checked", false); }); $("input[name=chk]").click(function() { var total = $("input[name=chk]").length; var checked = $("input[name=chk]:checked").length; if(total != checked) $("#cbx_chk.. 2021. 5. 27.
[백준/java] 1003번: 피보나치 함수 - DP(Dynamic Programming) 문제 다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다. 1 2 3 4 5 6 7 8 9 10 11 int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fibonacci(n‐2); } } fibonacci(3)을 호출하면 다음과 같은 일이 일어난다. fibonacci(3)은 fibonacci(2)와 fibonacci(1) (첫 번째 호출)을 호출한다. fibonacci(2)는 fibonacci(1) (두 번째 호출)과 fibonacci(0)을 호출한다. 두 번째 호출한 fibonacci(1)은 1을 출력하고.. 2021. 5. 27.
[javascript/jQuery] 짝 맞추어 카드 뒤집기 게임 안녕하세요. 이번 포스팅은 재밌는 포스팅을 좀 해보려고 합니다. 초기 게임판 모습입니다. 크게는 화면 구성은 두 영역으로 나뉩니다. (1) 게임판 영역 (2) 게임 참가자 및 스코어 영역 버튼은 두 가지가 있습니다 [시작] : 게임을 시작하는 버튼 [추가] : 참가자를 추가하는 버튼. [추가] 버튼을 누르면 동적으로 참가자 목록을 확장할 수 있습니다. 동시에, [삭제] 버튼도 나옵니다. [삭제] 버튼을 누르면 해당 행의 참가자가 지워집니다. 우선 큰틀을 잡기 위해 html 태그와 css 작성을 해보겠습니다. ※ html 태그 A B C D E 게임판 게임 참가자 등록 (최소 인원 : 2명) 이름 : 이름 : ※ CSS 이제 본격적으로, 게임 구현에 가장 중요한 자바스스크립트를 구현해보도록 하겠습니다. 먼.. 2021. 5. 25.
[백준/java] 14888번: 연산자 끼워넣기 - 백트래킹, 삼성기출문제 문제 N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 N-1개의 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다. 우리는 수와 수 사이에 연산자를 하나씩 넣어서, 수식을 하나 만들 수 있다. 이때, 주어진 수의 순서를 바꾸면 안 된다. 예를 들어, 6개의 수로 이루어진 수열이 1, 2, 3, 4, 5, 6이고, 주어진 연산자가 덧셈(+) 2개, 뺄셈(-) 1개, 곱셈(×) 1개, 나눗셈(÷) 1개인 경우에는 총 60가지의 식을 만들 수 있다. 예를 들어, 아래와 같은 식을 만들 수 있다. 1+2+3-4×5÷6 1÷2+3+4-5×6 1+2÷3×4-5+6 1÷2×3-4+5+6 식의 계산은 연산자 우선.. 2021. 5. 25.
728x90
반응형