본문 바로가기

전체 글

(24)
백준 17298 : 오큰수 링크 : https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 가장 쉬운 방법은 for loop을 두 개 써서 O(n^2)의 시간 복잡도로 푸는 것입니다. 하지만 N이 최대 1,000,000까지 될 수 있기 때문에 당연히 시간 초과가 뜰 것입니다. 스택을 이용한다면 O(n)의 시간 복잡도로 풀 수 있습니다. 이렇게 모든 원소에 대해 원소 오른쪽/왼쪽에 어떤 조건을 만족하는 첫번째 원소를 구하라는 문제는 보통 단일 스택 (monotonic stack, 상황에 따라 ..
계산 복잡도 이론(Time Complexity Theory) 오늘은 계산 복잡도 이론에 대해 잠깐 알아보겠다. 어떤 문제를 푸는 데에는 어떠한 알고리즘이 필요하다. 어떤 문제는 풀기 쉽고, 어떤 문제들은 풀기 어렵다. 예를 들어서. 어떤 숫자의 리스트를 정렬하는 것은 쉬운 문제이다. 이미 알려진 알고리즘도 굉장히 많다. 선택 정렬, 삽입 정렬, 거품 정렬 등등.... 그리고 시간 복잡도도 정렬에 따라 O(n^2) 아니면 O(nlogn)임을 알 수 있다. 반면 가장 효율적으로 대학 수업들을 서로 강의실과 시간이 겹치지 않게 모두 정렬하는 것은 어려운 문제이다. 고려해야 할 시간과 강의실도 있고, 무엇보다 그 수업들이 겹치지 않도록 해야 한다. 하지만, 알고리즘을 생각해 낸다고 해서 그 알고리즘이 가장 효율적인 것은 아니다. 예를 들어, 어떤 두 자연수가 서로소인지를..
[1] c++ 강의 - 프로그램이란? 한번쯤은 이런 글도 써 보고 싶었습니다. 앞으로 계속 프로그래밍에 관한 글을 조금씩 게재할 예정입니다. 오늘은 기본중의 기본, 프로그램이 무엇인가에 대해서 간단히 알아보도록 하겠습니다. 프로그램이란? 프로그램이란 간단히 말해서 컴퓨터가 실행시키는 명령어들의 모음이라고 할 수 있습니다. 프로그램으로 계산을 하거나, 모니터에 글자를 띄우거나 등의 특수한 일을 처리할 수 있죠. 프로그램은 해야 할 일 목록과 유사합니다.예를 들어서, 레모네이드를 만든다고 가정해 봅시다. 레모네이드를 만들기 위해 어떻게 해야 할까요?초간단하게 만들기 위해서는 다음과 같이 된다고 합시다. 1. 컵에 물을 채운다.2. 레몬 주스를 첨가한다.3. 설탕을 첨가한다.4. 저어 준다. 이렇게 일련의 과정을 통해 레모네이드가 탄생합니다. 프..
음악에 숨겨진 수학 - 음계를 결정하는 등비수열 흔히들 음악은 수학과 상관없다는 생각이 지배적이지만 가만히 생각해보면 음악은 수학 그 자체이다. 하나의 음을 내기 위해서 바이올린의 켜거나 피아노 건반을 두들기는 순간 발생하는 소리의 주파수에 따라서 음의 높낮이가 결정된다. 그리고 여러 음들이 합쳐져 조화를 이루게 되면 바로 화음이 되는 것이다. 사실 화음을 연구하는 화성학은 먼 옛날 피타고라스에 의해서도 연구되었다. 이에 대해서는 차차 이야기하도록 한다. 먼저 음에 대해서 기본적으로 알아보자. 음, 즉 소리라는 것은 알다시피 공기 등의 매질을 통해서 우리의 청각기관을 통해 인식된다. 이 음은 파동이기 때문에 주파수, 속도, 그리고 파장이라는 속성을 지니게 된다. 그리고 속도는 주파수와 파장을 곱한 값이다. 과학시간에 배워서 알고 있듯이, 공기라는 매질..
[가요 추천] 하현우 - Don't cry 비록 오랫동안 블로그를 관리하지 못 했지만... 조금씩조금씩 포스팅을 해 보려고 합니다. 오늘은 일단 오랜만에 음악 관련 글을 써 볼까 합니다ㅋ 제가 가요 추천 글을 몇 개 썼는데, 다 같은 가수라서 이번에는 다른 분의 노래를 들고 왔습니다. 오늘 제가 가지고 온 노래는 바로 하현우의 Don't cry 입니다.수개월 전, 복면가왕을 뜨겁게 달구었던 의문의 가수 음악대장을 기억하시나요?ㅋㅋ 피노키오와 비슷한 모습으로 변장을 하고 엄청난 고음으로 화제가 된 그 분. 결국에는 9연승을 기록하게 되었죠.음악대장의 정체는 바로 국카스텐의 하현우씨였습니다. 이 하현우씨가 9연승을 하면서 많은 곡을 불렀는데요, 개인적으로 하현우씨가 복면가왕에서 불렀던 9곡 중 Don't cry가 제일 인상이 깊어서 이번 포스팅에 올..
[가요추천] 제이레빗(J Rabbit) - JUMP 안녕하세요 글루온입니다. 요즘 많이 바빠서 포스팅을 자주 못하고 있네요ㅠ 앞으로는 좀더 분발할께요ㅋㅋ 이번에는 제이레빗 - JUMP를 들고 왔습니다ㅋㅋ 지난번에 포스팅할때 제이레빗 Happy things이었는데 이번에도 제이레빗이네요ㅎ 이번 노래는 뭔가 비장함이 있다고나 할까요... 자기 자신을 뛰어넘겠다는 의지가 가사에서 느껴집니다. 인생이 무의미하게 느껴지고 방황하고 싶으신 분들! 이 노래를 들어보세요. 공감되고 의지가 생길 겁니다. 가사에 이런 부분이 있죠. 요즘 사는 것이 귀찮게만 느껴지고, 노는 것도 귀찮고, 연애도 살짝 질리고... 이 부분이 아마 모두가 인생에서 한번쯤은 맞이하는 인생에 대한 허무감이라 생각합니다. 하지만 노래를 듣다보면 이런 나를 이겨내고 힘차게 뛰어오르겠다는 의지가 담겨있..
[가요 추천] 제이레빗(J Rabbit) - Happy things 안녕하세요. 글루온입니다. 요즘 많이 바빠져서....ㅠ 간단하게나마 포스팅을 할 예정입니다. 이번 포스팅에서는 제이레빗(J Rabbit) - Happy things를 들고 왔습니다ㅎㅎ 아주 매력적인 밴드죠ㅎ 정말 목소리가 일품이신 보컬 정혜선님과 악기 연주의 달인이신 정다운님ㅎㅎ 지난번에는 성균관대학교 축제에서 공연도 했다죠? 정말 매력적인 밴드입니다.ㅋㅋ 긴말 필요없이 한번 들어보세요ㅎㅎ 정말 들으면 흥겨워지는 노래입니다... 특히 가사를 들어보세요ㅋㅋ유난히 사람 많은 출근길에서 내 앞에 자리났을때ㅋㅋㅋㅋ정말 공감합니다정말 이 노래의 멜로디와 가사가 조화를 잘 이루는 것 같습니다.계속 듣게 되고, 길을 걷다보면 눈을 감고 계속 흥얼거리고 싶은 노래랄까요...ㅎㅎ 내일 월요일인데...ㅠ 이 노래 듣고 항..
소수는 무한한가? - 유클리드의 증명 소수는 무한한가? - 유클리드의 증명 안녕하세요. 글루온입니다. 이번 포스팅에서는 소수의 무한성에 대해서 논의해 보겠습니다. 사실 깊게 들어가려면 메르센 소수 등 이야기할 것들이 많아지지만, 오늘은 간단하게 소수의 개수가 무한이라는 것만 증명하겠습니다. 소수(prime number)는 참으로 신기한 수입니다. 오늘날 잘 알려진 세계 7대 수학 난제 중 하나에 속할 만큼 이 미스터리는 아직도 남아 있습니다. 세계 7대 수학 난제 중 하나인 리만 가설은 소수의 규칙성에 관한 문제입니다. 소수는 대체 어떤 규칙성을 띠고 있을까? 하는 것이죠. 이것이 왜 이슈가 되냐면 요즘 암호체계가 이 소수와 관련이 깊기 때문입니다. 소수의 불규칙성에 의해서 보안이 유지되는데, 소수의 규칙성을 알아내버리면 보안체계가 흔들리는..