[백준 1057] 파이썬_토너먼트
https://www.acmicpc.net/problem/1057 1057번: 토너먼트 김지민은 N명이 참가하는 스타 토너먼트에 진출했다. 토너먼트는 다음과 같이 진행된다. 일단 N명의 참가자는 번호가 1번부터 N번까지 배정받는다. 그러고 난 후에 서로 인접한 번호끼리 스타를 www.acmicpc.net 우리가 흔히 아는 토너먼트에서 서로가 몇 번만에 만나는지를 출력하는 문제이다. 접근 방법 다음 라운드로 진출하는 참가자는 다시 왼쪽부터 1번, 2번.. 순으로 받는다. 즉, (1 2) (3 4) (5 6) (7 8) (9 10) 이렇게 5개의 조가 있을 때 다음 라운드에 받는 번호는 2/2, 4/2, 6/2, 8/4와 같이 변한다. 또한 연속된 수에서 홀수가 작은 수여야만 만날 수 있다. 서로 번호의 차..
2022.08.09
no image
알고리즘 - 탐욕(Greedy)
저번 글에서는 검색과 순열에 대해서 알아보았다. 이번 시간엔 'Greedy'라고 불리는 최적해를 구하는 방법을 알아보자. 탐욕 최적해를 구하는데 사용되는 근시안적인 방법 여러 경우 중 하나를 결정해야 할 때마다 그 순간에 최적이라고 생각되는 것을 선택해 나가는 방식으로 진행하여 최종적인 해답에 도달한다. 각 선택의 시점에서 이루어지는 결정은 지역적으로는 최적이지만, 그 선택들을 계속 수집하여 최종적인 해답을 만들었다고 하여, 그것이 최적이라는 보장은 없다. 일반적으로, 머릿속에 떠오르는 생각을 검증 없이 바로 구현하면 Greedy 접근이 된다. 동작 과정 해 선택 = 선택 절차(Selection Procedure) 현재 상태에서 부분 문제의 최적 해를 구한 뒤, 이를 부분해집합(Solution Set)에..
2022.08.08
no image
알고리즘 -검색(브루트 포스)
앞에서는 배열을 선언하고 그 배열을 정렬하는 방법에 대해서 배웠다. 이번 글에서는 경우의 수를 이용하여 문제 해결을 하는 검색이라는 것에 대해서 배워보자. 완전 검색(Exaustive Search) 완전 검색 방법은 문제의 해법으로 생각할 수 있는 모든 경우의 수를 나열해보고 확인하는 기법 Brute-force 혹은 generate-and-test 기법이라고도 불림 모든 경우의 수를 테스트한 후, 최종 해법을 도출 일반적으로 경우의 수가 상대적으로 작을 때 유용 특징 모든 경우의 수를 생성하고 테스트하기 때문에 수행 속도는 느리지만, 해답을 찾아내지 못할 확률이 작다. 평가 등에서 주어진 문제를 풀 때, 우선 완전 검색으로 접근하여 해답을 도출한 후, 성능 개선을 위해 다른 알고리즘을 사용하고 해답을 확..
2022.08.08
no image
ALGORITHM?
알고리즘이라는 말은 많이 들어봤을 것이다. 나도 단순한 흐름이라고만 알고 있었지 이게 왜 필요한 것인지 알아보자! 알고리즘 유한한 단계를 통해 문제를 해결하기 위한 절차나 방법 주로 컴퓨터 용어로 쓰이며, 컴퓨터가 어떤 일을 수행하기 위한 단계적 방법 즉, 어떠한 문제를 해결하기 위한 절차 컴퓨터 분야에서 알고리즘을 표현하는 방법을 크게 두 가지이다. 의사 코드(슈도 코드, Pseudocode) 순서도 APS(Algorithm Problem Solving) 과정의 목표 중의 하나는 보다 좋은 알고리즘을 이해하고 활용하는 것!! 그렇다면 좋은 알고리즘이란 무엇일까? 정확성 : 얼마나 정확하게 동작하는가 작업량 : 얼마나 적은 연산으로 원하는 결과를 얻어내는가 메모리 사용량 : 얼마나 적은 메모리를 사용하는..
2022.08.08
no image
CSS - FLOAT, FLEX BOX
저번 글에서 배웠던 Display와 Position 모두 CSS Layout technique의 종류 중 하나였다! 오늘은 조금은 성격이 다른 float와 flex box를 이용하여 CSS Layout을 다뤄보자. CSS Layout technique 종류 Display Position float Flex box Grid 기타 이전 글들 또는 신문 기사와 같이 이미지를 감싸는 글자들을 많이 보았을 것이다. 또는 이미지가 왼쪽, 오른쪽으로 배치가 되어 있는 것을 보았을 것이다. 이때 사용하는 것이 바로 Float이다. 박스를 왼쪽 혹은 오른쪽으로 이동시켜 텍스트를 포함 인라인요소들이 주변을 wrapping 하도록 함 요소가 Normal flow를 벗어나도록 함 속성 none: 기본 값 left: 요소를 왼..
2022.08.07
no image
CSS-POSITION
지난 시간에 네모 박스의 크기 조절 방법을 배웠다면 이번에는 그 박스들의 위치를 지정해줄 것이다. 우선 HTML 시간에 잠깐 지나갔던 인라인/블록 요소라는 것이 기억나는가? 괜찮다. 이번에 다시 배우면 된다. 이전 글과 마찬가지로 CSS원칙 2번째를 알아보고 가자! 모든 요소는 네모이고, 좌측 상단에 배치 Display에 따라 크기와 배치가 달라진다. 여기 나오는 Display의 대표 종류가 block과 inline이다! display: blcok 줄 바꿈이 일어나는 요소 화면 크기 전체의 가로 폭을 차지한다. 블록 레벨 요소 안에 인라인 레벨 요소가 들어갈 수 있음. 대표적인 요소 - div/ ul,ol,li / p / hr / form 등 display: inline 줄 바꿈이 일어나지 않는 행의 일..
2022.08.07
no image
CSS - Box model
지금까지 HTML로 뼈대를 세우고 CSS로 기본 스타일을 지정해주는 방법을 알아봤다. 그럼 과연 우리가 보고 있는 이 웹 페이지들은 어떻게 구성되어 있는 것일까? 그전에 CSS 원칙 하나만 알아보고 가자. 모든 요소는 네모이고, 위에서부터 아래로, 왼쪽에서 오른쪽으로 쌓인다. 여기서 네모가 뭘까? 바로 오늘 우리가 알아볼 Box model을 이르는 말이다. 모든 HTML의 요소는 BOX 형태로 되어있고 하나의 BOX는 네 부분으로 이루어져 있다! 오늘 배울게 얼마나 중요한 것인지 와닿을 것이다. Box model 구성 각각의 영역들의 크기를 따로 설정해 줄 수도 있다! 첫 번째 그림과 같이 top, right 같은 세부 방향을 설정해주지 않고 margin: 10px;라고 선언한다면 상하좌우 모두 같은 값..
2022.08.07
[백준 2292] 파이썬 - 벌집
백준 2292 벌집 접근 방법 벌집 처음엔 1을 둘러싸고 있는 2~7까지의 숫자, 1-> 2 -> 9 -> 22 1,7,13,19와 같이 등차가 6인 등차수열 3 -> 11 -> 25 2, 8, 14와 같이 등차가 6인 등차수열 4 -> 13 -> 28 3, 9, 15와 같이 31 33 3*5와 같이 홀수 번호를 3에 곱한수 5 -> 15 > 31 4, 10, 16 같이 등차가 6인 등차 수열 6 -> 17 -> 34 5, 12, 17 과같이 등차가 5인 등차수열 7 -> 19 -> 37 6, 12, 18과 같이 등차가 6인 등차수열 이렇게 생각했지만 8, 20, 21과 같이 포함되지 못하는 숫자가 발생한다는 것을 알게 되었다. 그림을 자세히 보며 각 층의 숫자들을 써보았고 [1], [2 3 4 5 6 ..
2022.08.07
no image
CSS 기본 스타일
내가 원하는 그림, 이미지, 글 등을 집어넣는데 크기가 조절이 안되고 위치를 옮기지 못한다면 어떨까? 굉장히 불편할 것이다! 이런 불편함 들을 해결하기 위하여 이번 글에서는 크기, 색상 등을 손쉽게 바꾸는 방법을 알아보자. 크기 단위 px (픽셀) 모니터 해상도의 한 화소인 '픽셀' 기준 픽셀의 크기는 변하지 않기 때문에 고정적인 단위 % 백분율 단위 가변적인 레이아웃에서 자주 사용 em (바로 위, 부모 요소에 대한) 상속의 영향을 받음 배수 단위, 요소에 지정된 사이즈에 상대적인 사이즈를 가짐 rem (바로 위, 부모 요소에 대한) 상속의 영향을 받지 않음 최상위 요소(html)의 사이즈를 기준으로 배수 단위를 가짐 직접 해보며 비교해보자! 특히 em과 rem의 차이를 잘 알아두면 사용할 때 편하다...
2022.08.06