전체 글
follow your dream's
-
위 문제는 두 소수의 차이가 가장 작은 두 값을 출력하는 것이 관건이다. 다량의 소수를 한꺼번에 판별해서 구해야 할 경우 많은 숫자들을 소수인지 하나씩 판별하다보면 실행 시간은 한없이 길어질 것입니다. 골드바흐의 추측은 에라토스테나스의 체 개념을 이용하여 문제를 푸는 것이 간단하다. 에라토스테나스의 체 소수를 판별하는 알고리즘으로 가장 효율적인 알고리즘이다. 가장 먼저 소수를 판별할 범위만큼 배열을 할당하여, 해당하는 값을 넣어주고, 이후에 하나씩 지워나가는 방법을 이용한다. 배열을 생성하여 초기화한다. 2부터 시작해서 특정 수의 배수에 해당하는 수를 모두 지운다. (지울 때 자기자신은 지우지 않고, 이미 지워진 수는 건너뛴다.) 2부터 시작하여 남아있는 수를 모두 출력한다. 위 문제에 에라토스테네스의 ..
백준 문제풀기 [#9020번] - 골드바흐의 추측위 문제는 두 소수의 차이가 가장 작은 두 값을 출력하는 것이 관건이다. 다량의 소수를 한꺼번에 판별해서 구해야 할 경우 많은 숫자들을 소수인지 하나씩 판별하다보면 실행 시간은 한없이 길어질 것입니다. 골드바흐의 추측은 에라토스테나스의 체 개념을 이용하여 문제를 푸는 것이 간단하다. 에라토스테나스의 체 소수를 판별하는 알고리즘으로 가장 효율적인 알고리즘이다. 가장 먼저 소수를 판별할 범위만큼 배열을 할당하여, 해당하는 값을 넣어주고, 이후에 하나씩 지워나가는 방법을 이용한다. 배열을 생성하여 초기화한다. 2부터 시작해서 특정 수의 배수에 해당하는 수를 모두 지운다. (지울 때 자기자신은 지우지 않고, 이미 지워진 수는 건너뛴다.) 2부터 시작하여 남아있는 수를 모두 출력한다. 위 문제에 에라토스테네스의 ..
2023.04.14 -
문제 예제 등차수열: 두 항의 차이가 모두 일정한 수열을 뜻한다. 예를 들어 1, 3, 5, 7, 9, ...은 등차수열이다. 이때 두 항의 차이는 이 수열의 모든 연속하는 두 항들에 대해서 공통으로 나타나는 차이므로, 공차라고 한다. 예를 들어, 앞의 수열의 공차는 2이다. 문제에서는 양의 정수 X의 각 자리가 등차수열을 이룬다면 이 수를 한수라고 하였다. 예를 들면 123은 각 자리수의 차가 1씩 나고, 147은 각 자리수의 차가 3씩 난다. 이 처럼 각 자리수의 차이가 공통적인 수를 한수라고 한다. 이때 N의 수는 1부터 1000까지의 숫자로 되어있다. 문제를 풀 때 나는 경우의 수를 3가지로 나누어 풀었다. N이 1~99인 경우, 각 자리수 차이를 비교할 수 없어 모든 수가 한수에 속한다. (예를..
백준 문제풀기 [#1065번] - 한수 문제문제 예제 등차수열: 두 항의 차이가 모두 일정한 수열을 뜻한다. 예를 들어 1, 3, 5, 7, 9, ...은 등차수열이다. 이때 두 항의 차이는 이 수열의 모든 연속하는 두 항들에 대해서 공통으로 나타나는 차이므로, 공차라고 한다. 예를 들어, 앞의 수열의 공차는 2이다. 문제에서는 양의 정수 X의 각 자리가 등차수열을 이룬다면 이 수를 한수라고 하였다. 예를 들면 123은 각 자리수의 차가 1씩 나고, 147은 각 자리수의 차가 3씩 난다. 이 처럼 각 자리수의 차이가 공통적인 수를 한수라고 한다. 이때 N의 수는 1부터 1000까지의 숫자로 되어있다. 문제를 풀 때 나는 경우의 수를 3가지로 나누어 풀었다. N이 1~99인 경우, 각 자리수 차이를 비교할 수 없어 모든 수가 한수에 속한다. (예를..
2023.04.13 -
파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 예외 - 구문에러가 없이 잘 작성된 코드라도 실행 도중 에러가 발생할 수 있다. (NameError, TypeError, ZeroDivisionError , IndexError 등) - 예외처리 a= int(input('Enter a:')) b= int(input('Enter b:')) try: #예외 발생 가능성이 있는 문장 c= a/b print(c) except ZeroDivisionError: #예외 종류 print('Cannot divide by 0') 클래스 - 객체를 만들어주는 도구 - 모든 데이터와 모든 함수는 객체 이다. -클래스의 구성 생성자: def__init_(self, ...):..
헷갈리는 파이썬 문법 5. 예외처리, 클래스와 객체파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 예외 - 구문에러가 없이 잘 작성된 코드라도 실행 도중 에러가 발생할 수 있다. (NameError, TypeError, ZeroDivisionError , IndexError 등) - 예외처리 a= int(input('Enter a:')) b= int(input('Enter b:')) try: #예외 발생 가능성이 있는 문장 c= a/b print(c) except ZeroDivisionError: #예외 종류 print('Cannot divide by 0') 클래스 - 객체를 만들어주는 도구 - 모든 데이터와 모든 함수는 객체 이다. -클래스의 구성 생성자: def__init_(self, ...):..
2023.04.12 -
파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 함수 - 함수의 재사용성 (reuse) 파이썬 함수 내장함수(상당히 많다.) - 군집자료형에 유용한 함수들 len(), max(), min(), sum(), sorted(), reversed() 함수 1) sorted() 함수: 정렬해주는 함수 - 집합이거나 튜플이거나 리스트인 값들을 sorted()에 적용시키면 전부 다 리스트로 정렬되어 출력되어진다. 2) reversed 함수 : 데이터를 역순으로 바꾸는 함수 - 순서가 있는 list, tuple, str에만 적용가능 L= [1,3,5,7,9] M= reversed(L) print(M) >> #리스트를 출력해주는 것이 아니라 역순으로 된 object..
헷갈리는 파이썬 문법 다지기 4. 함수와 모듈파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 함수 - 함수의 재사용성 (reuse) 파이썬 함수 내장함수(상당히 많다.) - 군집자료형에 유용한 함수들 len(), max(), min(), sum(), sorted(), reversed() 함수 1) sorted() 함수: 정렬해주는 함수 - 집합이거나 튜플이거나 리스트인 값들을 sorted()에 적용시키면 전부 다 리스트로 정렬되어 출력되어진다. 2) reversed 함수 : 데이터를 역순으로 바꾸는 함수 - 순서가 있는 list, tuple, str에만 적용가능 L= [1,3,5,7,9] M= reversed(L) print(M) >> #리스트를 출력해주는 것이 아니라 역순으로 된 object..
2023.04.10 -
파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 리스트와 연산 - 대괄호 [] 사용 - 순서가 있고, 인덱스를 이용하여 데이터에 접근이 가능 - 인덱스는 0번부터 시작, 음수로는 마지막 인덱스가 -1 - 리스트는 수정 가능하다. (mmutable) - 리스트 슬라이싱 (slicing) A= [15,27,32,20,17,13,10,22] A[:] #리스트 전체 다 A{;;} #리스트 전체 다 A[:5] #앞에서부터 4번째까지 A[0:5] #0번째부터 4번째까지 A[2:-1] #2번째 부터 -2번째까지 A[-3:-1] #-3번째부터 -2번째까지 A[2:6:1] #2번째부터 5번째까지 1칸식 띄어서 A[::2] #전체 다 2칸씩 띄어서 - 리스트 연결(+..
헷갈리는 파이썬 문법 다지기 3. 군집자료형과 for 반복문파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 리스트와 연산 - 대괄호 [] 사용 - 순서가 있고, 인덱스를 이용하여 데이터에 접근이 가능 - 인덱스는 0번부터 시작, 음수로는 마지막 인덱스가 -1 - 리스트는 수정 가능하다. (mmutable) - 리스트 슬라이싱 (slicing) A= [15,27,32,20,17,13,10,22] A[:] #리스트 전체 다 A{;;} #리스트 전체 다 A[:5] #앞에서부터 4번째까지 A[0:5] #0번째부터 4번째까지 A[2:-1] #2번째 부터 -2번째까지 A[-3:-1] #-3번째부터 -2번째까지 A[2:6:1] #2번째부터 5번째까지 1칸식 띄어서 A[::2] #전체 다 2칸씩 띄어서 - 리스트 연결(+..
2023.04.09 -
파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. if 조건문 if 조건 1: 명령문 ~ elif 조건 2: 명령문~ else : 명령문~ a= int(input('Enter a:')) b= int(input('Enter b:')) if a>b: max = a else: max = b print(max) 반복문 1) while 반복문 while 조건식: 명령어 1 명령어 2 ... 명령어 n #예제: 1부터 10까지 짝수의 합 구하기 a=2 sum= 0 while a
헷갈리는 파이썬 문법 다지기 2. 조건문과 반복문파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. if 조건문 if 조건 1: 명령문 ~ elif 조건 2: 명령문~ else : 명령문~ a= int(input('Enter a:')) b= int(input('Enter b:')) if a>b: max = a else: max = b print(max) 반복문 1) while 반복문 while 조건식: 명령어 1 명령어 2 ... 명령어 n #예제: 1부터 10까지 짝수의 합 구하기 a=2 sum= 0 while a
2023.04.09 -
파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 파이썬 주석 처리 - 한 줄 주석: # - 여러 줄 주석: 홑따옴표 세 개 또는 쌍따옴표 세 개 변수명 만들 때 - 변수명은 영어 소문자, 대문자 , 숫자, _ 로만 구성한다. - 변수명은 숫자로 시작할 수 없다. - 대소문자를 구분한다. data와 Data는 다른 변수 - 다음 키워드를 변수명으로 사용하면 안된다. 객체 삭제하기 - del 을 사용하여 객체 삭제 가능하다. ex. del data 수치자료형 - 복소수 - 복소수형은 실수부와 허수부로 표현한다. 허수부 뒤에는 j또는 J를 붙인다. ex. x= 3+ 5j x의 type을 찍어보면 complex(복소수형)이라고 찍힌다. 문자열(str) - ..
헷갈리는 파이썬 문법 다지기 1. 변수, 자료형, 연산자, 입출력문파이썬 문법의 모든 내용을 담은 게시글이 아닌 헷갈리거나 자주 까먹는 부분의 문법들만 다룬 내용입니다. 파이썬 주석 처리 - 한 줄 주석: # - 여러 줄 주석: 홑따옴표 세 개 또는 쌍따옴표 세 개 변수명 만들 때 - 변수명은 영어 소문자, 대문자 , 숫자, _ 로만 구성한다. - 변수명은 숫자로 시작할 수 없다. - 대소문자를 구분한다. data와 Data는 다른 변수 - 다음 키워드를 변수명으로 사용하면 안된다. 객체 삭제하기 - del 을 사용하여 객체 삭제 가능하다. ex. del data 수치자료형 - 복소수 - 복소수형은 실수부와 허수부로 표현한다. 허수부 뒤에는 j또는 J를 붙인다. ex. x= 3+ 5j x의 type을 찍어보면 complex(복소수형)이라고 찍힌다. 문자열(str) - ..
2023.04.08 -
컴퓨터공학과 4학년을 재학중인 나지만 사실 난 내 전공에는 별로 관심이 없었다. 관심이 없으니 공부도 자연스럽게 소홀해지게되고, 학년을 올라가지만 실력은 아직 1학년 수준에 머물러있었다. 4학년이 되어서야 내가 컴퓨터에 관심이 없는게 아니라는 것을 깨달았다. 나는 그냥 공부가 하기 싫었던 거다. 뒤늦게라도 내 수준을 깨달았다. 앞으로 내가 공부해야하는 것들이 산더미지만 차곡차곡 내 머리속에 정리해나가며 공부를 할 예정이다. 그나마 대학교를 다니면서 안드로이드 앱 개발쪽은 놓치 않고 꾸준히 했어서 다행이다. 안드로이드 앱 개발도 열심히 공부하며 코틀린 , 파이썬 공부와 백준 문제 풀기를 꾸준히 할 예정이다. 블로그에 남겨 나의 다짐이 꺾이지 않게 계속 볼 것이다. 화이팅해보자.
뒤늦게 코딩에 관심이 생기며컴퓨터공학과 4학년을 재학중인 나지만 사실 난 내 전공에는 별로 관심이 없었다. 관심이 없으니 공부도 자연스럽게 소홀해지게되고, 학년을 올라가지만 실력은 아직 1학년 수준에 머물러있었다. 4학년이 되어서야 내가 컴퓨터에 관심이 없는게 아니라는 것을 깨달았다. 나는 그냥 공부가 하기 싫었던 거다. 뒤늦게라도 내 수준을 깨달았다. 앞으로 내가 공부해야하는 것들이 산더미지만 차곡차곡 내 머리속에 정리해나가며 공부를 할 예정이다. 그나마 대학교를 다니면서 안드로이드 앱 개발쪽은 놓치 않고 꾸준히 했어서 다행이다. 안드로이드 앱 개발도 열심히 공부하며 코틀린 , 파이썬 공부와 백준 문제 풀기를 꾸준히 할 예정이다. 블로그에 남겨 나의 다짐이 꺾이지 않게 계속 볼 것이다. 화이팅해보자.
2023.04.08