분류 전체보기(42)
-
[백준] 1904번 : 01타일
요새 DP를 공부하고 있는데 하는 겸사겸사 비슷한 문제들 위주로 풀어보고 있다. 문제를 보기 전까진 몰랐는데 보고 나니 이것도 피보나치의 연장선이라 좀 쉽게 해결한 것 같다. 접근법 - N이 5일 때까지를 각각 계산한 결과 1, 2, 3, 5, 8로 피보나치 형상인 것을 알 수 있었다. - 왜 피보나치일까 고민을 해본 결과, 끝이 00인 경우 (N - 2)의 수와 끝이 1인 경우 (N - 1)를 더해주면 N일 때의 경우의 수가 나온다는 것을 알 수 있었다. - 중간에 for문 안에서 %를 취해준 이유는 마지막에 %를 취해주게 되면 중간에 int값이 터질 수도 있어서 안에서 처리를 해줬다. - 재귀로 돌리면 무조건 터지는 수이기 때문에 for문을 활용하여 넣어주었다. 풀이 #백준 1904번, 01타일 im..
2021.04.20 -
[백준] 1003번 : 피보나치 함수
접근법 - n의 범위가 40보다 같거나 작기 때문에 시간 초과는 발생하지 않을 거라고 생각을 했다. - 피보나치의 특성 상 n이 5라면 4와 3을 합친 값이 나오기 때문에 fibo(0)와 fibo(1) 각각의 0, 1 출력 횟수를 list로 만들어서 미리 넣어둔다. (fibo(0)의 경우 [1, 0], fibo(1)의 경우 [0, 1]) - n이 2보다 같거나 클 경우 i를 범위 (2, n + 1)만큼 돌려서 해당 i의 이전 값 2개의 0, 1 출력 횟수를 각각 더해준 후 list에 추가해준다. - l[n][0], l[n][1]값을 출력해준다. 풀이 def fibo(n) : l = [[1, 0], [0, 1]] if n < 2: print(l[n][0], l[n][1]) else : for i in ra..
2021.04.19 -
[백준] 10819번 : 차이를 최대로
접근법 - 처음에는 로직을 직접 짰음 (가장 최솟값을 중앙에 넣고 최댓값으로 한 번 감싸고, 그 겉을 다시 최솟값으로 감싸고 반복) (친구와 같이 풀다가 친구가 반례 [7, 1, 1, 4, 4, 12, 19]를 발견함) - 문제를 풀다가 중간에 배열의 사이즈가 8 이하라는 것을 보고 로직 수정' (순열로 전체를 나열해도 배열의 원래 크기가 8 이하기 때문에 시간이나 메모리에 큰 지장이 없다 생각) - permutations 라이브러리를 사용하여 순열로 list를 만든 후 max로 배열안의 최댓값을 출력함 풀이 from itertools import permutations N_size = int(input()) N = list(map(int, input().split())) def absSum(N) : c..
2021.04.09 -
[HTML] 시작하기(2)
이전에 했던 것과 이어서 몇 가지 추가로 알아보았다. codingarchive.tistory.com/4 [HTML] 시작하기(1) 학교 다닐 때 HTML에 대해서 간단히 배우고 웹페이지를 제작하는 프로젝트를 했었다. 근데 오래간만에 하려니 기억이 안 나서 생활코딩님 유튜브를 보며 다시 시작하려 한다. opentutorials.org/module/1 codingarchive.tistory.com 링크걸기 흔히 웹페이지에서 다른 웹페이지로 이동을 할 때 하이퍼링크를 타고 이동을 한다. HTML의 태그 중 태그는 이런 하이퍼 링크를 걸 수 있게 해주는 역할을 한다. 이때 태그의 속성 중 href라는 속성의 값으로 링크를 넘겨주면 링크 안의 텍스트에 해당 링크로 이동하는 하이퍼 링크가 걸리게 된다. "네이버로 ..
2021.03.26 -
[HTML] 시작하기(1)
학교 다닐 때 HTML에 대해서 간단히 배우고 웹페이지를 제작하는 프로젝트를 했었다. 근데 오래간만에 하려니 기억이 안 나서 생활코딩님 유튜브를 보며 다시 시작하려 한다. opentutorials.org/module/1892 HTML 수업 수업의 목적 본 수업은 HTML에 대한 심화된 내용을 다룹니다. HTML의 기본문법과 HTML의 주요한 태그들에 대한 수업을 담고 있습니다. 선행학습 본 수업을 효과적으로 수행하기 위해서는 웹애플리 opentutorials.org HTML 이란 - HyperTextMarkupLanguage의 줄임말 - 하이퍼텍스트를 가장 중요한 특징으로 하는 (HyperText) - 마크업이라는 형식을 가진 (Markup) - 프로그래밍 언어 (Language) HTML 파일 만들기 ..
2021.03.25 -
[백준] 10829번 : 스택
접근법 - BufferedReader와 StringBuilder를 이용하여 입력을 받아오려고 생각함. - 명령어가 push인지 그 외 명령어인지를 구분(어절의 개수로 구분) - push의 경우 split을 사용하여 두 번째에 해당하는 값을 ArrayList에 저장함. - 나머지 명령어의 경우 해당 내용에 따라서 코드를 작성 풀이 package baekjoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Stack_10828 { public static void main(String[] args) throws IOExcepti..
2021.03.24