스페셜 메소드의 개념에 대해서 아래 포스트에서 확인할 수 있습니다. [파이썬] 스페셜 메소드 1 스페셜 메소드(Special method) __이름__ 의 형태를 가지면서 파이썬에 의해 호출되는 메소드를 가리켜 &#... blog.naver.com 이번 포스팅에서는 스페셜 메소드를 활용하는 방법에 대해서 알아보도록 하겠습니다. 클래스의 인스턴스를 iterable 한 객체와 iterator 객체로 스페셜 메소드를 활용하여 만드는 예제를 가지고 설명하겠습니다. iterable 객체와 iterator 객체 이전에 iterable 객체와 iterator 객체에 관하여 자세히 설명한 포스팅이 있습니다. 자세한 내용은 아래 포스트를 참고하시고 이번에는 가볍게 정리만 하고 넘어가도록 하겠습니다. [파이썬] Iterable 객체와 Iterator 객체 iter() 함수와 next() 함수 iter() 함수 하나 이상의 값을 저장하는, 저장된 값을 하나씩 꺼낼 수 있는 자... blog.naver.
연산자 오버로딩 정의 : 객체 지향 컴퓨터 프로그래밍에서 다형성의 특정 경우로 다른 연산자들이 함수 인자를 통해서 구현하는 것을 말한다. 즉) 연산을 진행했을 때 이를 대신해서 미리 약속해 놓은 메소드가 호출되어 실행되는 것이 연산자 오버로딩이다. 예제 1) class Wallet(): def __init__(self, money): # 초기 돈 설정 self.money = money def __add__(self, add_money): # + 연산을 사용할 경우 호출될 메소드 정의 self.money += add_money print('add함수 호출(돈 추가)') # 호출이 되는지 눈으로 확인하기 위해 출력 def __sub__(self, sub_money): # - 연산을 사용할 경우 호출될 메소드 정의 self.money -= sub_money print('sub함수 호출(돈 사용)') # 호출이 되는지 눈으로 확인하기 위해 출력 def __call__(self): # 객체를
앞선 포스팅에서 연산자 오버로딩에 대한 개념과 간단한 예제를 알아보았습니다.(아래 링크) [파이썬] 연산자 오버로딩 1 연산자 오버로딩 정의 : 객체 지향 컴퓨터 프로그래밍에서 다형성의 특정 경우로 다른 연산자들이 함수 인... blog.naver.com 이번 포스팅에서는 연산자 오버로딩의 심화된 내용을 다루도록 하겠습니다. in-place 형태의 연산자 오버로딩 in-place 연산자란 +=, -=, /=, *= 과 같은 형태의 연산자를 말한다. in-place 연산자도 오버로딩이 가능하다. 가능하고 상황에 따라 꼭 정의를 해줘야 할 필요가 있다. 예제를 들어 설명하겠습니다. 예제 1) class Sample: def __init__(self, num): self.num = num def __add__(self, other): # + 연산할 경우 내 num과 다른 객체의 num을 더해라 return self.num + other.num def __str__(self): # self
객체의 외부에서 객체 내에 있는 변수(속성)에 직접 접근하도록 하는 것은 위험하다. 잘못된 값의 전달이 객체에 영향을 줄 수도 있으며 그 결과 오류 발생의 원인을 파악하는 것이 힘들어진다. 따라서 이번 포스팅에서는 클래스의 변수(속성)를 숨기는 정보 은닉에 대하여 알아보도록 하겠습니다. 클래스의 속성에 직접 접근 시 문제 예제 1) class Sample(): def __init__(self, num): # 정수 값 하나를 취함. self.num = num def __str__(self): # 정수 값을 문자열로 반환 return str(self.num) s1 = Sample(1) s1.num += 1 # 실수로 빼야하는데 더해버린 문장(인간의 실수) print(s1) 출력 1) 위 예제 1) 번은 클래스 속성에 직접 접근할 경우 발생하는 단적인 예를 보여줍니다. 개발자의 의도는 클래스의 변수에 숫자를 하나 빼고 싶었는데 실수로 +연산을 하여 객체에 영향을 준 예제입니다. 위 예제는
앞선 포스팅에서 __dict__이라는 딕셔너리에 대해서 언급한 적이 있습니다. (아래 링크) [파이썬] 클래스 정보 은닉 객체의 외부에서 객체 내에 있는 변수(속성)에 직접 접근하도록 하는 것은 위험하다. 잘못된 값의 전달이 ... blog.naver.com 간단히 다시 설명하자면 __dict__이라는 딕셔너리는 객체 하나당 하나씩 있는 딕셔너리로 키값으로는 객체의 속성명을 밸류 값으로는 객체의 속성명에 해당하는 값을 가지고 있는 딕셔너리입니다. 그러나 딕셔너리는 키와 밸류를 유지하기 위하여 리스트나 튜플보다 메모리 사용량이 많습니다. 이러한 문제를 해결할 수 있는 것이 바로 __slots__인데 이번 포스팅에서 설명하겠습니다. __slots__ 특정 속성에만 메모리를 할당하도록 하는 특수 속성이다. 특징 메모리 사용량을 줄여준다. (최적화) 객체의 속성 추가 및 생성을 제한할 수 있다. 사용법 __slots__ = ('속성명1', '속성명2',...) => 튜플 또는 리스트 모두
앞선 포스팅에서 객체가 갖는 값에 직접 접근하는 것은 오류의 확률을 높이므로 메소드를 통해서 접근하는 방법을 소개했습니다.(아래 링크) [파이썬] 클래스 정보 은닉 객체의 외부에서 객체 내에 있는 변수(속성)에 직접 접근하도록 하는 것은 위험하다. 잘못된 값의 전달이 ... blog.naver.com 위 포스팅에서 변수에 언더바를 두 개 붙여 외부로 접근을 막고 메소드를 통하여 프로퍼티에 접근하는 것을 알려드렸습니다. 하지만 이러한 방식도 단점이 있는데 메소드를 자주 호출하는 것은 코드를 복잡하게 만들고 불편합니다. 따라서 이번 포스팅에서는 프로퍼티 설정으로 안정성은 유지되면서 문장도 간결해지는 방법을 소개하겠습니다. property (내장 함수) 프로퍼티 어트리뷰트(속성[메소드나 변수..])를 반환하는 함수. 사용법 변수 = property(fget=None, fset=None, fdel=None, doc=None) * fget => 속성 값을 얻는 함수 * fset => 속성 값
네스티드 함수(Nested Function) 정의 : 함수 안에 정의된 함수(중첩 함수) 예제 1) def outer_func(num): def inner_func(num): # 네스티드 함수!! print(num) inner_func(num) outer_func(10) 출력 1) nonlocal 키워드 정의 : 네스티드 함수에서 외부 함수에서 사용되는 변수를 사용할 수 있도록 해주는 키워드 사용법 nonlocal 외부 함수의 변수명 !! 사용 방법은 global 키워드를 사용하는 것과 동일하다. !! nonlocal 키워드를 사용하지 않으면 외부 함수의 변수를 수정할 수 없다. 예제 2) def outer_func(): num = 1 def inner_func(): nonlocal num # nonlocal 키워드 사용!! num = num + 1 # 키워드를 사용했기에 값 수정이 가능하다. return num return inner_func() print(outer_func())
데코레이터 개념 데코레이터는 꾸며주는 역할을 하는 함수 또는 클래스를 의미한다. 예제 1) def deco(func): # 데코레이터 함수, 즉 데코레이터 def add_func(): # 추가된 기능의 포함된 함수 print('안녕하세요!') # 추가된 기능 func() # 원래 함수 기능 return add_func # 추가된 기능이 있는 함수를 반환 def print_hello(): # hello만 출력하는 함수 print('hello') def print_hi(): # hi만 출력하는 함수 print('hi') hello_kr = deco(print_hello) # 데코레이터 사용하여 선언 (hello) hi_kr = deco(print_hi) # 데코레이터 사용하여 선언 (hi) hello_kr() # 데코레이터 호출 hi_kr() # 데코레이터 호출 출력 1) 위 예제 1)은 hello와 hi라는 문자열을 출력하는 함수에 한글로 뜻을 알려주는 기능을 추가한 데코레이터 함수를
10815번: 숫자 카드 10815번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 질문 검색 숫자 카드 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 2 초 256 MB 49185 23681 16736 47.577% 문제 숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 가지고 있는지 아닌지를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 ... www.acmicpc.net 문제는 카드 집합에서 가지고 있는 카드를 찾는 문제이다. (자세한 건 위 링크 클릭) 소스코드 import sys input = sys.stdin.readline # 타임아웃이 나길래 사용해봤습니다. print = sys.stdout.write sang_num_cnt = input() # 상근이
14425번: 문자열 집합 문제 총 N개의 문자열로 이루어진 집합 S가 주어진다. 입력으로 주어지는 M개의 문자열 중에서 집합 S에 포함되어 있는 것이 총 몇 개인지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어진다. 입력으로 주어지는 문자열은 알파벳 소문자로만 이루어져 있으며, 길이는 500을 넘지 않는다. 집합 S에 같은 문자열이 여러 번 주어지... www.acmicpc.net 문제는 입력받은 문자열이 주어진 문자열 집합에 있는지 확인하는 문제이다. (자세한 건 위 링크 클릭) 소스코드1 - set의 해쉬 사용 안함(느림) import sys input = sys.stdin.readline # input을 sys.stdin.readline으로 사용 (속도향상목적) n,
[파이썬] 데코레이터 1(개념) 데코레이터 개념 데코레이터는 꾸며주는 역할을 하는 함수 또는 클래스를 의미한다. 예제 1) 출력 1) 위 예... blog.naver.com 위 포스팅에서 데코레이터에 대한 개념에 대해서 설명했습니다. 이번 포스팅에서는 python에서 데코레이터를 사용하는 방식과 활용하는 방법 또 심화된 내용에 대해서 설명하도록 하겠습니다. @ 기반의 데코레이터 사용 앞선 포스팅에서 네스티드 함수(중복 함수)를 이용하여 데코레이터 사용하는 방법에 대해서 설명하였습니다. 하지만 실제로 데코레이터를 사용할 경우는 네스티드 함수를 사용하여 정의하고 변수에 네스티드 함수를 담아서 사용하는 것이 아닌 @를 기반으로 데코레이터를 사용합니다. 그 예제를 보여드리도록 하겠습니다. 예제 1) - 네스티드 함수로 데코레이터 사용 def deco(func): # 데코레이터 선언 def add_func(): print('안녕하세요~') func() return add_func def pr
스태틱(static) 메소드를 설명하기 이전에 클래스 변수에 대해 간단하게 설명하고 (스태틱) static 메소드 지금 포스팅을 보기 전에 클래스에 관련된 포스팅을 한 번 보고 오는 것을 추천드립니다. [파이썬] 클래스 1 (클래스의 이해) 클래스의 필요 이유 c 언어에는 클래스라는 것이 없다. 그럼에도 프로그램을 작성할 수 있으며 파이썬 역시... blog.naver.com [파이썬] 파이썬의 클래스와 객체 본질 1 파이썬 기본에서 클래스와 객체를 언급한 적이 있다. 오늘은 기본적인 클래스의 내용 말고 클래스와 객체의... blog.naver.com 클래스 변수에 대한 이해(간단 설명) 예제 1) class SampleClass(): cv = 10 # 클래스 변수 (클래스에서 공통으로 가지는 변수) def __init__(self): self.iv = 20 # 인스턴스 변수 (객체별로 존재) 위 예제 1)에서 cv는 클래스 변수이고 iv는 인스턴스의 변수이다. 클래스 변수인 cv는
1620번: 나는야 포켓몬 마스터 이다솜 안녕? 내 이름은 이다솜. 나의 꿈은 포켓몬 마스터야. 일단 포켓몬 마스터가 되기 위해선 포켓몬을 한 마리 잡아야겠지? 근처 숲으로 가야겠어. (뚜벅 뚜벅) 얏! 꼬렛이다. 꼬렛? 귀여운데, 나의 첫 포켓몬으로 딱 어울린데? 내가 잡고 말겠어. 가라! 몬스터볼~ (펑!) 헐랭... 왜 안 잡히지?ㅜㅜ 몬스터 볼만 던지면 되는 게 아닌가...ㅜㅠ (터벅터벅) 어? 누구지? 오박사 : 나는 태초마을의 포켓몬 박사 오민식 박사라네. 다솜아, 포켓몬을 잡을 때는, 일단 상대 포켓몬의 체력을 적당히 바닥으로 만들어놓고 몬스터 볼을 던져야 한... www.acmicpc.net 문제는 포켓몬 이름을 대면 번호를, 번호를 대면 이름을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 import sys input = sys.stdin.readline M, N = map(int,input().split()) pocket_dict = {} # 포켓몬을
10816번: 숫자 카드 2 10816번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 질문 검색 숫자 카드 2 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 76192 27832 19912 35.858% 문제 숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는... www.acmicpc.net 문제는 가지고 있는 숫자는 몇개인지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 import sys input = sys.stdin.readline N = input() n_list = list(map(int, input().split())) M = input() m_list =
클래스(class) 메소드는 스태틱(static) 메소드와 상당히 비슷한 부분이 많습니다. 둘이 비교를 하고자 할 때 아래 포스팅을 참조하세요~. [파이썬] static 메소드 스태틱(static) 메소드를 설명하기 이전에 클래스 변수에 대해 간단하게 설명하고 (스태틱) static 메소드 ... blog.naver.com 이번 포스팅은 스태틱(static) 메소드와 상당히 비슷한 클래스(class)메소드에 대해서 설명하도록 하겠습니다. 클래스(class) 메소드 사용법 @classmethod def 메소드명(cls, 매개변수1, ..., 매개변수n) !! 데코레이터(@)를 사용한다 !! 첫 번째 매개변수 (cls는 관습적으로 사용하는 이름), cls를 사용한다. 예제 1) class SampleClass: cnt = 0 def __init__(self): SampleClass.cnt += 1 @classmethod # 클래스 메소드 사용!!!!!! def get_cnt(cls, n
10814번: 나이순 정렬 10814번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 나이순 정렬 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 3 초 256 MB 64687 27825 21139 42.110% 문제 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 온라인 저지 회원의 수 N이 주어진다. (1 ≤ N ≤ 100,000) 둘째 줄부터 N개의 줄에는 각 회원의 나이와 이름... www.acmicpc.net 문제는 안정 정렬(stable sort) 알고리즘 문제이다. (자세한 건 위 링크 클릭) 소스코드 import operator # itemgetter()메소드를 사용하기 위한 임포트 import sys # sys.stdin.readline()을 사용하기 위한 임포트 input = sys.stdi
이번 포스팅은 패킹과 언패킹과 관련이 있는 내용이기 때문에 패킹과 언패킹관련 포스팅을 보고 오면 이번 포스팅의 이해가 훨씬 쉬울 수 있습니다. [파이썬] 패킹과 언패킹 패킹 정의 튜플 또는 리스트의 값을 묶는 행위 예제 1) 출력 1) 언패킹 정의 묶여있는 튜플 또는 리스트의 ... blog.naver.com 함수의 호출과 선언의 인자와 매개변수에서 *(asterisk) 사용은 언패킹과 패킹과 관련되어 있다. 함수 호출에서 *, ** 사용 함수의 호출 과정에서 *, **의 사용은 언패킹과 관련이 있다. 1. 함수의 호출 과정에서 *사용 함수의 호출 과정에서 *의 사용은 리스트, 튜플, 문자열 등 iterable 한 객체를 전달하는 과정에서 언패킹이 진행되는 것을 말한다. 사용법 함수이름(*iterable객체) => 리스트, 튜플, 문자열 등 iterable 객체를 풀어서 전달 예제 1) def show_para(a, b, c): print(a, b, c) iterable_obj =
파이썬이 제공하는 자료형은 크게 4가지 분류의 자료형을 제공을 한다. 자료형의 종류 1. 시퀀스 타입 (sequence type) 2. 텍스트 시퀀스 타입 (text sequence type) 3. 매핑 타입 (mapping type) 4. 셋 타입 (set type) 위 4 분류의 자료형에 대하여 설명하도록 하겠다. 1. 시퀀스 타입 (sequence type) 저장된 값의 순서 정보가 존재하는 것이 특징인 자료형 타입이다. 저장된 값의 순서 정보가 존재하기 때문에 저장된 값의 순서 정보를 기반으로 진행되는 연산이 가능하다.(인덱싱과 슬라이싱) 시퀀스 타입의 자료형 1-1) 리스트 <list 클래스의 객체> 1-2) 튜플 <tuple 클래스의 객체> 1-3) 레인지 <range 클래스의 객체> 2. 텍스트 시퀀스 타입 (text sequence type) 문자열의 경우 시퀀스 타입과 동일한 일종이지만 텍스트 시퀀스 타입이라고 불린다. 텍스트 시퀀스 타입 역시 저장된 값의 순서 정보
18870번: 좌표 압축 18870번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 좌표 압축 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 2 초 512 MB 24341 10525 7994 41.433% 문제 수직선 위에 N개의 좌표 X 1 , X 2 , ..., X N 이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. X i 를 좌표 압축한 결과 X' i 의 값은 X i > X j 를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X 1 , X 2 , ..., X N 에 좌표 압축을 적용한 결과 X' 1 , X' 2 , ..., X' ... www.acmicpc.net 문제는 좌표 압축하여 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 import sys # readline을 쓰기 위한 임포트 input = sys.stdin.readline # 속도 향상을 위해 input을 readline으로 대체 test_case = input() # 테스트 캐이스
기존에 집합 자료형인 set에 대하여는 python 기본 카테고리에서 설명한 적이 있습니다. set에 기본적인 내용에 대하여는 아래의 링크들을 참조하시면 됩니다. [파이썬] 집합 자료형 1 (정의, 특징) 집합(Set)이란? 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형 집합의 정의 집합 자료형을 만드는 ... blog.naver.com [파이썬] 집합 자료형 2 (차집합, 교집합, 합집합) 집합(Set) 자료형의 차집합, 교집합, 합집합을 사용하므로 집합 자료형을 정말 유용하게 사용할 수 있다. ... blog.naver.com [파이썬] 집합 자료형 3 (집합 관련 함수) 1.set() - 집합 자료형으로 바꿔주는 함수 2. 집합1.intersection(집합2) - 집합1과 집합2의 교집합을 구해... blog.naver.com 오늘 할 얘기는 set 자료형과 frozenset의 공통점, 차이점과 set 자료형의 루핑 테크닉 그리고 set 자료형 내포(컴프리헨션)에 대하여
10926번: ??! 10926번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 ??! 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 17074 10302 9627 62.839% 문제 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오. 입력 첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자... www.acmicpc.net 문제는 입력받은 문자열에 ??!을 추가하여 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 input_string = input() # 문자열 입력받기 print(input_string+"??!") # ??!추가하여 출력 풀이 과정 백준 단계별로 문제를 푸는 중인데 입출력부분에 새로운 문제가
18108번: 1998년생인 내가 태국에서는 2541년생?! 18108번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 1998년생인 내가 태국에서는 2541년생?! 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 (추가 시간 없음) 1024 MB 8582 6875 6575 80.517% 문제 ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세... www.acmicpc.net 문제는 형변환과 연산을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 input_year = int(input()) # 정수형으로 연도 입력받기 print(input_year-543) # 543년을 빼고 출력하기 풀이 과정 이 문제는 입력받은 문자열을
이번 포스팅에서는 리스트 또는 iterable 한 객체를 정렬할 수 있는 sort()와 sorted()에 대하여 자세한 내용을 알아보도록 하겠습니다. sort() 리스트 클래스에는 sort()라는 메소드가 존재합니다. 정의 리스트를 대상으로 오름차순 또는 내림차순으로 정렬을 시켜주는 시간 복잡도 O(NlogN)를 보장하는 매우 효율적인 정렬 알고리즘을 사용하는 메소드입니다. 특징 1. 메모리 공간 절약을 위해 시퀀스를 제자리에서 수정하여 효율적이다.(메모리를 복사하지 않음) 2. 정렬된 시퀀스를 반환하지 않는다.(제자리에서 수정하여 이미 정렬해놨기에 따로 반환하는 게 없음) 3. 인자로 key와 reverse 두 개의 인자를 받는다. 사용방법 리스트이름.sort(key=None, reverse=False) 기본 예제) list1 = [3,5,1,4,2] list1.sort() # 리스트이름.sort() print(list1) 출력) reverse 인자를 사용하여 오름차순과 내림차순
이번 포스팅 내용은 파이썬에서 문자열을 비교하는 방식에 대하여 설명하고자 한다. 파이썬에서 문자열 비교 1. 영어 영어로 이루어진 문자열을 비교하는 것은 아스키코드의 영향을 받는다. (거의 모든 프로그래밍 언어는 같은 문자열 규칙을 가지고 있다.) 법칙 1. 알파벳 순서상 뒤로 갈수록 크다.(사전 편찬 순) 법칙 2. 문자가 같다면 뒤에 문자를 비교한다. 법칙 3. 비교하는 문자들이 모두 같다면, 길이가 긴 문자열이 크다. 법칙 4. 소문자가 대문자보다 크다. 예제 1) # 법칙 1 print('A' < 'B') # 알파벳 순서상 뒤로 갈 수록 크다. # 법칙 2 print('AA' < 'AB') # 앞 문자가 같다면 뒤에 문자를 비교한다. # 법칙 3 print('AA' < 'AAA') # 비교하는 문자들이 모두 같다면, 길이가 긴 문자열이 크다. # 법칙 4 print('A' < 'a') # 소문자가 대문자보다 크다. 출력 1) 모두 True를 반환하는 것을 볼 수 있다. 사실
2525번: 오븐 시계 2525번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 오븐 시계 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 128 MB 41950 18234 16307 44.580% 문제 KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게... www.acmicpc.net 문제는 조건문을 이용하여 시간의 덧셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 hour, min = map(int,input().split()) # 현재 시간과 분을 받는다. time = int(input()) # 더할 시간을 받는다. result = [hour + (time//60
iterable 한 객체를 받아 enumerate라는 iterator 객체를 생성하는 enumerate 함수에 대해서 간단하게 소개하고자 합니다. enumerate 함수 정의 : iterable 객체와 번호를 인자로 전달받아 전달받은 번호를 전달받은 iterable 한 객체의 첫 번째 요소부터 번호를 매기는 함수 사용법 : enumerate 객체를 담을 변수 = enumerate(iterable객체, 번호) 예제 1) list1 = ['c', 'd', 'a', 'e', 'b'] # iterable한 객체 (리스트) 생성 enum1 = enumerate(list1, 5) # enumerate 함수 사용 for i in enum1: # 반복문으로 enumerate 객체 뽑아보기 print(i) 출력 1) 번호(5)부터 첫 번째 요소에 순서를 매긴 것을 확인할 수 있다. enumerate 함수 활용 예제 2) # 변수를 사용하지 않고 직접 for문에 넣기 list1 = ['c', 'd',
2480번: 주사위 세개 2480번 제출 맞힌 사람 숏코딩 재채점 결과 채점 현황 강의 주사위 세개 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 128 MB 30074 16128 14359 54.531% 문제 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰... www.acmicpc.net 문제는 정렬한 다음 조건을 분기하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 dice = list(map(int,input().split())) # 3개의 주사위 수를 dice에 리스트로 담는다. dice.sort() # 정렬!! if dice[0] == dice[1] == dice[2]: #
[파이썬] 사용자 입출력 (input, print) 사용자의 입출력에 대하여 알아보려고 한다. 프로그램을 작성하다 보면 사용자의 입력을 받아야 하는 경우... blog.naver.com 위 포스팅에서는 print() 함수를 기반으로 한 문자열 출력 방식에 대하여 알아본 적이 있습니다. 이번 포스팅에서는 표현식을 기반으로 문자열 조합을 하는 방법을 알아보려고 합니다. 문자열 조합 정의 편집하듯 하나의 문자열을 구성해 내는 것을 가리켜 문자열 조합이라고 합니다. 종류 1. 표현식 기반으로 문자열 조합(string formatting expressions) 예제 1) # 표현식 기반으로 문자열 조합 name = '영철' age = 12 str1 = '%s의 나이는 %d입니다.' %(name, age) # 표현식 기반 print(str1) 출력 1) 2. 메소드 호출을 통한 문자열 조합 (string formatting method calls) !! 다음 포스팅에서 자세히~~ 예제 2) #
[파이썬] 표현식 기반 문자열 조합 위 포스팅에서는 print() 함수를 기반으로 한 문자열 출력 방식에 대하여 알아본 적이 있습니다. 이번 포스... blog.naver.com 이전 포스팅에서 표현식 기반 문자열 조합에 대해서 알아봤습니다. 이번 시간에는 메소드를 통해서 문자열을 조합하는 메소드 기반 문자열 조합에 대해서 알아보도록 하겠습니다. 1. 메소드 기반 문자열 조합 (string formatting method calls) 사용법 '문자열의 틀'.format(틀에 들어갈 값) 예제 1) # '문자열의 틀에는 {}중괄호'가 들어간다. # 숫자가 없을 경우 format인자의 순서대로 들어간다. str1 = '{}의 나이는 {}입니다.'.format('나', 11) print(str1) # {}중괄호 안에 인덱스 방식으로 숫자를 넣어 인자의 순서를 지정할 수 있다. str2 = '{1}의 나이는 {0}입니다.'.format(13,'너') print(str2) 출력 1) 언팩킹과
파이썬 기본에서 클래스와 객체를 언급한 적이 있다. 오늘은 기본적인 클래스의 내용 말고 클래스와 객체의 본질에 대해서 알아보고자 한다. [파이썬] 클래스 1 (클래스의 이해) 클래스의 필요 이유 c 언어에는 클래스라는 것이 없다. 그럼에도 프로그램을 작성할 수 있으며 파이썬 역시... blog.naver.com 객체 안에 변수가 만들어지는 시점 결론부터 말하자면 '객체 내에서 해당 변수를 대상으로 대입 연산을 처음 진행하는 순간'이다. 예제를 살펴보며 알아보자 예제 1) class SampleClass: def set_variable(self, i): self.i = i def get_variable(self): return self.i sc = SampleClass() sc.set_variable(10) # 이 때 대입 연산을 진행하고 객체 내 변수가 만들어진다. print(sc.get_variable()) 출력 1) 위 예제 1)에서는 set_variable이라는 메소드에서 sc
이전 포스팅에서 객체 안에 변수가 만들어지는 시점과 객체에 변수와 메소드를 붙였다 떼는 방법에 대하여 알아보았습니다. [파이썬] 파이썬의 클래스와 객체 본질 1 파이썬 기본에서 클래스와 객체를 언급한 적이 있다. 오늘은 기본적인 클래스의 내용 말고 클래스와 객체의... blog.naver.com 이번에는 이어지는 내용으로 클래스의 변수 추가하는 방법, 클래스 객체에 대해서 알아보도록 하겠습니다. 클래스에 변수 추가하기 파이썬에서는 클래스도 객체이기 때문에 변수를 추가할 수 있습니다. 예제로 알아보도록 하겠습니다. 예제 1) class SampleClass: def __init__(self, i): self.i = i def get_variable(self): return self.i SampleClass.new = "new variable" # 클래스에 new라는 변수 추가 print(SampleClass.new) 출력 1) 위 예제 1)과 같이 클래스라는 틀에 변수를 설정할 수 있
파이썬의 클래스는 '상속'이라는 것을 할 수 있다. 즉 클래스에 부모 클래스와 자식 클래스를 만들 수 있고 자식 클래스에는 상속받은 부모 클래스의 메소드를 사용할 수 있다. [파이썬] 클래스 4 (상속) 클래스 관련 포스팅 1. 클래스 기본 이해 2. 클래스 구조와 사용법 3. 클래스 생성자 5. 클래스 변수 이번 ... blog.naver.com 상속에 대한 기본적인 내용은 위의 포스팅에 설명했으니 이번 포스팅에서는 상속에 심화 과정을 이야기하겠습니다. 클래스 상속 예제 1) class Mom: def print_mom(self): print("hi mom!") class Son(Mom): def print_son(self): print("hi son~") 보통 Mom 클래스를 부모 클래스, 상위 클래스, 슈퍼 클래스라고 부른다. 보통 Son 클래스를 자식 클래스, 하위 클래스, 서브 클래스라고 부른다. 위 두 클래스의 상속 관계로 인해 발생하는 메소드 오버라이딩이나 가려진 부모
isinstance 함수 객체의 클래스 유형을 확인하는 함수 사용법 isinstance(확인할인스턴스, 확인할클래스) 첫 번째 인자로 들어오는 인스턴스가 두 번째 인자로 들어오는 클래스의 인스턴스 인지 확인하는 함수이다. 인스턴스가 클래스의 인스턴스가 맞는다면 True를 반환하고 아니라면 False를 반환한다. 예제 1) class TestCase(): pass a = TestCase() print(isinstance(a, TestCase)) 출력 1) instance() 함수를 소개한 이유는 이후 설명할 클래스의 상속의 내용과 object 클래스에 대해서 설명하기 위해서 소개하기 위하여 우선 소개하였습니다. 이후 isinstance()를 이용하여 클래스의 특성을 설명하겠습니다. 직접 상속과 간접 상속 예제 2) class SuperClass(): pass class NormalClass(SuperClass): # SuperClass를 직접상속한 클래스 pass class SubCl
스페셜 메소드(Special method) __이름__ 의 형태를 가지면서 파이썬에 의해 호출되는 메소드를 가리켜 '스페셜 메소드'라고 한다. 대표적으로 __init__이 있다. 사실 len(), str() 이러한 함수도 스페셜 메소드이다. 예제 1) # 스페셜 메소드 a = [1, 2, 3] print(len(a)) print(a.__len__) print(a.__len__()) print(str(a[0])) print(a[0].__str__) print(a[0].__str__()) 출력 1) 위 출력 1)과 같이 len() == __len__(), str() == __str__()은 같은 결과를 반환하는 것을 볼 수 있다. 이렇게 직접 그 이름을 명시하지 않고 다른 경로를 통해, 또는 상황에 따라 자동으로 호출되는 메소드를 가리켜 '스페셜 메소드'라고 한다. 스페셜 메소드를 클래스에 직접 정의하기 스페셜 메소드를 직접 클래스에 정의하여 여러가지 활용을 할 수 있다. 그렇기 위해서
딕셔너리 심화 1 편은 아래 링크에 ... dictionary와 for 문 (루핑 기술) 딕셔너리(dictionary)도 아이터러...
문제는 좌표를 입력받고 x, y값 모두 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이...
이번 딕셔너리 심화 3 편에서는 딕셔너리의 setdefault 메소드와 defaultdict 함수에 대하여 알아보도록 하...
문제는 좌표를 입력받고 y, x값 모두 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이...
딕셔너리의 저장 순서 예제 1) 출력 1) 위 예제와 같이 딕션너리에 값을 저장하면 그 순서를 유지한 채로 ...
문제는 단어의 길이부터 정렬하고 단어를 사전 순서로 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스...
immutable 객체 객체가 가지고 있는 요소의 값의 수정이 불가능한 객체를 가리킨다. 대표적인 예로는 '...
두 객체의 비교 두 객체를 비교하는 연산자는 파이썬에서는 두 가지가 있다. 1. ==연산자 ...
문제는 입력받은 숫자를 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 시간...
iter() 함수와 next() 함수 iter() 함수 하나 이상의 값을 저장하는, 저장된 값을 하나씩 꺼낼 수 있는 자...
함수도 객체다. 파이썬은 모든 것을 객체로 처리합니다. 실수도 정수도 객체이고 함수도 객체입니다. 예시 ...
map함수 두 번째 인자로 전달된 iterable한 객체에 하나씩 접근하여 첫 번째 인자로 전달된 함수를 적용하...
제너레이터(Generators) 아이터레이터(iterator) 객체의 한 종류이다. next() 함수를 호출하면 값을 하나...
제너레이터(Generators) 아이터레이터(iterator) 객체의 한 종류이다. next() 함수를 호출하면 값을 하나...
패킹 정의 튜플 또는 리스트의 값을 묶는 행위 예제 1) 출력 1) 언패킹 정의 묶여있는 튜플 또는 리스트의 ...
문제는 카운팅 정렬을 구현하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 카운팅...
네이드 튜플(named tuple) 말 그대로 이름 붙여진 튜플을 만드는 것으로 각 요소에 이름을 붙여 접근하는 ...
문제는 카운팅 정렬을 이용하요 통계 문제를 해결하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
딕셔너리 (Dictionary) 기본 딕셔너리 (dictionary)의 기본적인 내용은 제가 정리한 딕셔너리 자료형 포스...
문제는 입력받은 숫자 안에서 정렬을 하여 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
위 포스팅에서 파이썬에서는 re 모듈을 이용하여 정규식을 사용한다고 하였다. 이번 포스팅에서는 re 모듈...
문제는 입력받은 사람의 키와 몸무게를 비교하여 덩치 순위를 출력하는 문제이다. (자세한 건 위 링크 클릭...
위 포스팅에 이어서 정규 표현식을 지원하는 re 모듈에 대하여 포스팅하겠습니다. 컴파일 (re.compile) 간...
가장 많이 사용하는 메타 문자에 대해서 위 링크에서 설명을 했습니다. 이번에는 더욱 자세한 메타 문자에 ...
문제는 정상적인 체스판을 색칠하기 위해 가장 적게 다시 페인트칠해야 하는 정사각형의 최소 개수를 구하...
문제는 666이 들어가 수의 순서를 묻는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제도...
레퍼런스 카운트 정의 : 객체를 참조하는 변수의 수를 가리켜 레퍼런스 카운트라고 한다. 파이썬에서 변수...
문제는 수를 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 입력받은 수를 ...
프로그램을 작성하다 보면 어쩔 수 없이 발생하는 것이 오류이다. 이러한 오류 처리를 무시하거나 예외적으...
파이썬 내장함수란? 말 그대로 파이썬에 내장되어 있는 함수를 말한다. 내장 함수는 외부 모듈과 달리 impo...
영타 속도를 높이기 위해서 그리고 올바른 파지법으로 타자를 치기 위해서 거의 6개월간 매일 30분씩 타자 ...
라이브러리란? "library" 말 그대로 도서관이라는 뜻으로 유용한 프로그램을 모아 놓은 것이 바...
문제는 세 수의 합이 입력된 수와 가장 가까운 경우를 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코...
정규 표현식이란? Regular Expressions(정규 표현식)은 복잡한 문자열을 처리할 때 사용하는 기법이다. ...
위 포스팅에서 정규 표현식의 기본적인 개념에 대해서 설명했습니다. 그중에서 메타 문자에 대한 개념도 설...
문제는 입력받은 수의 가장 작은 생성자를 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정...
문제는 피타고라스 공식을 이용해 직각삼각형인지 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
클래스 관련 포스팅 1. 클래스 기본 이해 2. 클래스 구조와 사용법 4. 클래스 상속 5. 클래스 변수 이번 포...
문제는 택시 기하학과 유클리드 기하학을 이용해 원의 넓이를 구하는 문제이다. (자세한 건 위 링크 클릭) ...
클래스 관련 포스팅 1. 클래스 기본 이해 2. 클래스 구조와 사용법 3. 클래스 생성자 5. 클래스 변수 이번 ...
문제는 좌표상 두 점의 좌표와 반지름이 주워졌을 때 겹치는 점의 개수를 구하는 문제이다. (자세한 건 위 ...
클래스 변수란? 클래스 안에 생성한 변수를 말한다. 클래스 변수 선언 클래스 변수의 선언은 클래스 안에 ...
문제는 입력받은 수의 팩토리얼을 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제...
모듈이란? 다른 파이썬 프로그램에서 불러와 사용할 수 있게끔 만든 함수나 변수 또는 클래스를 모아 놓은 ...
문제는 재귀 함수를 이용하여 피보나치수열을 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
모듈 내에서 직접 실행과 외부 파일에서 실행 모듈이 잘 동작하는지 모듈 파일 내에서 직접 실행해봐야 하...
앞선 포스팅에서 함수의 기본에 관한 이야기를 했다. 그중에 함수의 구조를 이야기할 때 인자와 매개변수에...
lambda(람다)란? lambda는 함수를 생성할 때 사용하는 예약어로 def와 동일한 역할을 한다. 람다는 이름 없...
문제는 소수를 구하는 문제이다.(feat. 에라토스테네스의 체) (자세한 건 위 링크 클릭) 소스코드 풀이 과...
사용자의 입출력에 대하여 알아보려고 한다. 프로그램을 작성하다 보면 사용자의 입력을 받아야 하는 경우...
문제는 입력받은 수와 그 수의 2배의 안의 수에서 소수가 몇 개인지 출력하는 문제이다. (feat. 베르트랑 ...
이번 포스팅에서는 파일을 읽어오고 파일에 데이터를 쓰는 방법에 대하여 알아보도록 하겠다. 파일을 읽어...
문제는 2보다 큰 짝수는 소수의 합인데 어떤 소수의 합인지 풀어내는 문제이다. (feat.골드바흐의 추측) (...
앞선 포스팅에서 파일 입출력에 대한 기본적인 이야기를 하였습니다. 이번 포스팅에서는 파일 입출력에 대...
문제는 직사각형 안 기준점에서 직사각형을 탈출하는 최단거리를 구하는 문제이다. (자세한 건 위 링크 클...
클래스의 필요 이유 c 언어에는 클래스라는 것이 없다. 그럼에도 프로그램을 작성할 수 있으며 파이썬 역시...
저번 포스팅에서는 클래스에 대한 기본적인 정의에 대하여 얘기하였다. 이제부터 포스팅에서는 본격적으로 ...
문제는 직사각형의 나머지 점의 위치를 찾는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 ...
문제는 입력받은 수의 범위 내에서 소수들의 합과 제일 작은 소수를 구하는 문제이다. (자세한 건 위 링크 ...
리스트 내포 또는 리스트 컴프리핸션이란? [](대괄호)안에서 for문을 사용하여 리스트를 생성하는 방법 사...
문제는 소인수분해를 구현하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 소인수 ...
함수란? 프로그래밍에서 함수란 입력값을 가지고 어떠한 일을 처리하여 출력값을 내놓는 것을 말한다. 함수...
반복문이란? 파이썬에서 반복해서 문장을 수행해야 하는 경우 반복문을 사용한다. 그때 사용하는 것이 whil...
1. break 문 정의 break 문은 가장 가까이 감싸고 있는 반복문 하나를 빠져나오게 하는 명령문 예제 1) 출...
문제는 우주선으로 행성을 이동할 때 순간이동한 횟수를 구하는 문제이다. (자세한 건 위 링크 클릭) 소스...
while 문과 비슷한 반복문인 for 문은 파이썬의 직관적인 특징을 잘 나타낸다. 이번 포스팅에는 for 문에 ...
문제는 입력받은 수가 소수인지 판별하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제...
프로그래밍을 할 때 주어진 조건을 판단한 후 그 상항에 맞게 처리해야 하는 경우가 생기는데 그때 사용하...
문제는 설탕 배달을 할 때 필요한 최소한의 봉지를 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 ...
연산자는 if 문에서만 사용되는 것은 아니지만 파이썬에서는 주로 if 문에서 사용되기에 if 문과 함께 연산...
문제는 큰 수 a, b의 합을 출력하는 문제이다. (자세한 건 위 링크 클릭) 파이썬 소스코드 풀이 과정 이 문...
딕셔너리(Dictionary)란? 대응 관계를 나타낼 수 있는 자료형으로 키(key)와 값(value)를 한 쌍으로 갖는 ...
딕셔너리의 사용 1. 딕셔너리는 주로 어떤 것을 표현하는 데 유용할까? 딕셔너리는 요소가 키(key)와 값(va...
문제는 몇 번째 손님에게 어떤 방을 배정할지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이...
1. update(추가할 딕셔너리) - 대상에 딕셔너리를 추가하는 함수 2. pop(키값) - 키값에 해당하는 요소를 ...
집합(Set)이란? 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형 집합의 정의 집합 자료형을 만드는 ...
집합(Set) 자료형의 차집합, 교집합, 합집합을 사용하므로 집합 자료형을 정말 유용하게 사용할 수 있다. ...
1.set() - 집합 자료형으로 바꿔주는 함수 2. 집합1.intersection(집합2) - 집합1과 집합2의 교집합을 구해...
불(Bool)이란? 불(Bool) 자료형이란 참(True)과 거짓(False)을 나타내는 자료형이다. 불 자료형의 사용...
문제는 각 층별로 몇호에 몇명이 사는지 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
튜플도 문자열과 리스트처럼 인덱싱과 슬라이싱이 가능하면 하는 방법도 동일하다. 따라서 기본적인 튜플의...
문제는 낮에는 올라가고 밤에는 미끄러지는 달팽이가 목표까지 며칠 만에 도착했는지 출력하는 문제이다. (...
리스트 값 수정 리스트는 문자열과 다르게 값을 인덱싱을 통해 수정하거나 삭제할 수 있다. 예제 1) 출력 1...
문제는 벌집의 중앙에서 n 번방까지 몇 칸을 이동하는지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소...
1. insert(요소 인덱스, 넣을 값) - 요소 인덱스에 넣을 값을 넣어주는 함수 2. pop(인덱스) - 해당 인덱스...
튜플(Tuple)이란? 순서를 가지는 객체의 집합을 의미한다. 리스트와 차이점 1. 리스트는 [](대괄호)로 감...
문제는 지그재그로 나열된 분수들의 순서를 찾는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
리스트도 문자열처럼 인덱싱과 슬라이싱이 가능하며 하는 방법도 동일하다. 따라서 기본적인 리스트의 인덱...
문제는 벌집에서 가운데서 n 번 방까지의 거리를 구하는이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
문자열이란? 문자, 단어 등으로 구성된 문자들의 집합을 의미한다. 문자열의 사용 파이썬에서 문자열을 만...
문제는 입력받은 두 수를 뒤집었을 때 큰 수를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
문제는 다이얼로 전화를 걸때 걸리는 시간을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
문자열 안에 특수문자 표현 1. 작은 따옴표 또는 큰 따옴표 출력 문자열을 나타내는 방식은 바로 따옴표를 ...
문자열의 인덱싱 인덱싱(indexing)이란? 무언갈 가리킨다는 의미로 문자열의 각 요소마다 번호를 매긴 것을...
문제는 크로아티아 알파벳이 몇 개 들어갔는지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
문자열을 출력할 때 필요한 포맷팅에 대하여 알아보자. 파이썬에서는 문자열을 포맷하는 다양한 방법이 있...
#upper() - 대문자로 바꿔주는 메소드 #lower() - 소문자로 바꿔주는 메소드 #swapcase() - 대문자는 소문...
문제는 그룹 단어의 개수를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 ...
리스트(List)란? 순서를 가지는 객체의 집합을 의미한다. ※링크드 리스트(linked list)라고 한다. 리스트...
문제는 손익분기점을 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 몇 개를 ...
문제는 입력받은 숫자의 합을 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 ...
문제는 입력받은 문자열 중에 알파벳이 몇 번째 있는지 찾아내는 문제이다. (자세한 건 위 링크 클릭) 소스...
파이썬이란? 1990년 암스테르담의 귀도 반 로섬이 개발한 "인터프리터 언어"이다. ※ 인터프리터...
문제는 입력받은 수 만큼 문자열의 문자를 반복하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
문제는 가장 많이 사용된 알파벳을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 ...
파이썬에서의 수 파이썬에서 사용하는 수에 대하여 알아보자. 종류 예제 1) 각 수를 "변수"에 담...
문제는 공백을 기준으로 한 단어의 개수를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
파이썬의 주석 주석이란? 프로그램 내에 삽입된 메모. (프로그램의 실행 결과에는 영향을 주지 않는다.) 주...
문제는 입력한 값 범위 내에 한수가 몇 개인지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
문제는 입력받은 문자를 아스키코드로 변환하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
ubuntu 나 리눅스 터미널 환경(CLI)에서 또는 VScode나 다른 통합 개발 환경의 터미널에서 gcc명령어...
문제는 리스트의 모든 요소를 더하는 함수를 만드는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
특정 조건에 따라 소스코드의 일부를 삽입하거나 삭제할 수 있도록 디자인된 지시자 조건부 코드 삽입을 위...
문제는 10000보다 작은 셀프 넘버를 순서대로 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이...
문제는 가짜 평균을 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 수를 입력...
프로그램을 작성하다 보면 지역변수, 전역변수 말고도 프로그래머가 원할 때 메모리에 할당하고 원할 때 소...
문제는 O, X 퀴즈의 점수를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는...
문제는 평균 이상인 사람들이 몇 프로인지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
중첩 구조체 구조체 변수도 구조체의 멤버로 선언될 수 있다. 이렇게 구조체 안에 구조체 변수가 멤버로 존...
문제는 반복문을 이용하여 계단식으로 별을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
문제는 숫자를 입력받고 조건에 맞는 수만 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과...
struct라는 키워드를 사용해서 정의하는 구조체가 있는 반면, union이라는 키워드를 사용해서 정의하는 &#x...
구조체와 공용체와 마찬가지로 자료형을 정의하는 방법이다. 정의 및 선언 열거형의 정의 방법은 구조체와 ...
문제는 while 문을 이용하여 입력받은 두 수의 합을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코...
문제는 EOF(파일의 끝)까지 입력받은 두 수의 합을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스...
위 포스트에서 파일에 대한 입출력 스트림에 대하여 알아봤다. 이번 포스팅에서는 파일을 열었으니 목적에 ...
문제는 원래 수로 돌아올 때까지 연산을 반복하는 while 문 문제이다. (자세한 건 위 링크 클릭) 소스코드 ...
위 포스팅에서 잠깐 언급했던 파일 입출력을 위한 스트림을 형성할 때 사용하는 스트림에 종류에 대하여 자...
문제는 입력받은 숫자를 리스트에 담고 최소값, 최대값을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소...
파일의 마지막 데이터까지 불러 들어야 하는 상황이 올 수 있다. 이 경우 파일의 끝을 확인하는 방법이 필...
문제는 입력받은 수를 배열에 넣고 최대값과 그 최대값이 몇 번째 입력받은 수인지 구하여 출력하는 문제이...
문제는 입력받은 세 숫자를 곱한 후 0부터 9까지 숫자가 각각 몇 번씩 쓰였는지 구하는 문제이다. (자세한 ...
메모리 구성 시각화 위 그림과 같은 영역을 나누어 메모리를 구성하면 유사한 성향의 데이터를 각 영역에 ...
문제는 42로 나눈 나머지들 중 몇 개가 다른지 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
표준 입출력 버퍼에 대한 이해가 있어야 이번 포스팅을 잘 알 수 있다. 아래 포스팅을 먼저 보고 오는 것을...
문제는 반복되는 덧셈의 결과를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제...
문제는 입출력 방식이 빠른 것을 사용한 반복문 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
문제는 반복문을 이용하여 숫자를 차례대로 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
문제는 입력된 숫자에서 1까지 반복문을 이용하여 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 ...
구조체 배열의 선언과 접근의 방법이 일반적 배열의 선언과 접근과 비슷하듯이 구조체 변수의 포인터 변수...
문제는 반복문을 이용해 입력받은 숫자의 덧셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 ...
typedef 선언 개념 기존에 존재하는 자료형의 이름에 새 이름을 부여하는 목적으로 하는 선언 예제 1) 이렇...
문제는 반복문을 이용해 입력받은 숫자의 덧셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 ...
문제는 반복문을 이용하여 계단식으로 별을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 ...
구조체 변수를 함수의 인자로 전달하거나 함수 내에서 return 문을 통해 구조체 변수를 반환하는 경우에는 ...
문제는 정렬을 이용하여 통계에 관한 계산을 하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정...
문제는 나눈 나머지를 구하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 입력받은...
저번 포스트는 2차원 배열이름의 포인터 형을 알아봤다. 위 포스팅에 이어서 2차원 배열이름의 특성과 주의...
문제는 입력받은 수를 내부에서 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제...
문제는 곱셈의 과정을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 곱셈의...
문제는 조건문을 이요한 두 수를 비교하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 문제는...
함수 포인터 변수들만 메모리에 저장되는 것이 아니라. 함수들도 바이너리 형태로 메모리 공간에 저장된다....
문제는 조건문을 이용하여 성적을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문...
프로그램 실행 시 main 함수로 전달할 인자를 열거할 수 있으며, main 함수 역시 이러한 인자를 전달받을 ...
데이터의 이동경로를 의미하는 '스트림' 입출력을 하기 위해 키보드와 모니터를 연결시켜 주는 ...
문제는 조건문을 이용하여 윤년을 체크하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문...
지금 포스팅하는 내용은 스트림과 데이터의 이동에 대한 이해가 있어야 소용이 있는 함수들이다. 이 포스팅...
문제는 좌표의 위치를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제는 좌표가...
지금 포스팅하는 내용은 스트림과 데이터의 이동에 대한 이해가 있어야 소용이 있는 함수들이다. 이 포스팅...
문제는 조건문을 이용하여 알람이 울릴 시간을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀...
표준 입출력 기반의 버퍼 표준 입출력을 사용하는 함수를 통하여 데이터를 입출력하는 경우, 해당 데이터들...
문제는 구구단을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제도 반복문을 활...
문제는 배열을 정렬하는 문제인데 시간 복잡도를 O(nlogn)인 정렬 문제이다. (자세한 건 위 링크 클릭) 소...
문제는 개모양을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문제 역시 앞선 포...
문제는 입력을 받은 수의 덧셈 연산을 묻는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문...
문제는 입력받은 두 수의 뺄셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문...
문제는 입력받은 배열을 카운팅 정렬로 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
문제는 입력받은 두 수의 곱셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 문...
문제는 입력받은 두 수의 나눗셈을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 ...
문제는 입력받은 두 정수의 사칙연산을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 ...
다중 포인터 정의 포인터 변수 선언에 있어 *연산자가 둘 이상 사용되어 선언되는 포인터 변수를 가리켜 &#...
1차원 배열 이름의 포인터 형 int arr[10]; 여기서 배열의 이름 arr은 int형 포인터이다. 따라서 함수의 인...
문제는 입력받은 배열을 정렬하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 우선 이 문제는...
문제는 기본 출력인 Hello World를 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 기...
문제는 문자열을 두 줄 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 우선 기본 중에 ...
문제는 출력 문제로 고양이 모양을 출력하는 문제이다. (자세한 건 위 링크 클릭) 소스코드 풀이 과정 이 ...
문제는 종말 숫자인 666이 연속으로 들어간 숫자를 작은 순서대로 찾아내는 문제이다. (자세한 건 위 링크 ...
문제는 정상적인 체스판을 색칠하기 위해 가장 적게 다시 페인트칠해야 하는 정사각형의 최소 개수를 구하...
함수의 기본에 대한 내용은 아래 포스트에서 다루었고 보다 더 깊은 이해를 위한 포스팅을 하려고 한다. ma...
변수의 기본에 관한 내용은 아래 포스트에 정리되어 있고 지역변수에 대한 내용은 아래 포스트에서.. 변수...
배열이란? 1. 같은 데이터형의 요소들이 동일한 크기로 순서를 갖고 나열되어 있는 집합! 2. 둘 이상의 변...
char형 배열을 이용하면 문자열의 저장과 변경도 가능해진다. char형 배열의 문자열 저장과 '널(NU...
&연산자 정의 피연산자의 주소 값을 반환하는 연산자. !! 피연산자는 변수여야 한다. (상수는 불 가능)...
배열의 이름은 무엇일까? 배열의 이름은 포인터이다. 단) 그 값을 바꿀 수 없는 '상수 형태의 포인터&...
마지막에 널 문자가 삽입되는 문자열의 선언 방식에는 두 가지가 있다. 1. 배열을 기반으로 하는 문자열 선...
함수의 인자 전달의 방식 함수 호출 시 전달되는 인자의 값은 매개변수에 복사가 된다. 즉) 복사가 되는 것...
https://www.acmicpc.net/problem/7568 문제는 N 명의 집단에서 키와 몸무게를 동시에 비교하여 등수를 정...
Call-by-value 단순히 값을 전달하는 형태의 함수호출을 가리켜 Call-by-value라고 한다. Call-by-refer...
변수를 상수화하는 const 선언은 포인터 변수를 대상으로도 선언이 가능하다. 1. 포인터 변수가 가리키는 ...
https://blog.naver.com/sunghak93/222383755050 위의 포스트는 printf함수와 scanf함수의 기본적인 사용법...
if문 정의 코드 흐름의 분기를 위해 조건적 실행을 가능하게 하는 문장 구조 if(조건1) { 조건 1만족 시 실...
반복문의 생략과 탈출인 continue와 break에 관하여 .. break;문 정의 break문은 가장 가까이 감싸고 있는 ...
외우지 말고 구글에 검색하면 다 나온다. 외우는 것보다 검색하는 방법을 배워라.
<!doctype html> - html5 문서라는 것을 나타내주는 태그 보통 맨 앞에 온다. <meta charset&...
1. 내가 직접 서버를 설치해 운영하기. 서버 프로그램을 내 컴퓨터에 직접 설치하여 웹 페이지를 운영하는 ...
HTML과는 다른 언어로 웹페이지 디자인 목적의 언어
첫 번째. Html 태그 안에 style 속성을 이용하는 방법.. ex) <a href="주소" style&#x...
앞 글에서 잠깐 언급했던 선택자(Selector)에 대해서 얘기해 보겠다. 스타일을 적용할 대상을 정의하는 것...
<table>태그는 표를 만드는 태그!! 옛날에는 홈페이지 레이아웃을 만들때 <table>태그를 활용...
웹페이지에서 사용자가 데이터를 선택할 수 있는 UI(user-interface)를 만드는 태그들!! 1. dropdown lis...
<label> 무언가의 이름표라는 기능을 가짐 HTML에서 사용을 권장함!!! 예를 들어 우리가 <inp...
<meta>태그는 웹페이지를 설명해주는 태그이다. 이 웹페이지의 저장방식은 "utf-8"방식...
다양한 선택자의 사용 태그사이의 (띄어쓰기) 는 <ul>태그 밑에 있는 모든 <li>태그를 선택...
사용자가 입력한 것들을 서버로 전송할 때 사용하는 태그. <form action = "주소" meth...
정의.. 사용자가 입력값을 줄 수 있게 하는 UI(user interface)를 만드는 태그 특징.. 사용자의 입력을 ...
의미 사용자가 입력한 값이 유효한지 체크하는 것. 예제) 1. required 속성 required 속성은 textfield에 ...
바른 타법으로 타자를 연습하고자 다짐한지 일주일이 지났습니다. 중간 점검 겸, 후기를 쓰고자 합니다. 매...
의미: class 선택자처럼 동작하지만 여러가지 특수한 선택을 하는 선택자 element의 상태에 따라 선택되기...
그 외 다양한 가상 클라스 선택자... 참고 !!= : 앞에 선택자의 종류는 바꿀 수 있음 ul : first-chi...
의미 폰트의 사이즈를 지정하는 속성! 사용법 3개 중 원하는 단위를 선택해서 사용 사이즈 단위
의미 색을 지정하는 속성! 사용법 3개 중 원하는 색 지정 방식를 선택해서 사용 색 지정 방식
의미 텍스트 정렬을 지정하는 속성 사용법 선택자 안에 text-align이란 속성을 쓰고 4가지 속성값 중 원하...
1. font-family 의미 글씨체(서체)를 지정하는 속성 사용법 선택자안에 font-family속성을 쓰고 서체이름 ...
상속 의미: 부모 엘리먼트의 속성을 자식 엘리먼트가 물려받는 것을 의미 ps)상속이 되는 속성이 있고 안되...
※ inline 과 blocklevel · block level 엘리먼트 : 화면 전체를 사용하는 태그 ex)<h1~6>태그 , <...
※의미 화면의 크기에 따라 웹페이지의 요소들이 최적화된 모양으로 바뀌게 하는 것을 반응형웹(Responsiv...
c언어의 기본 단위인 함수에 대해서 기본적인 것만 정리하려고 한다. (자세한건 나중에...) 정의 함수 : 입...
정의 주석이란?? 프로그램 내에 삽입된 메모. 컴파일의 대상에서 제외가 되기 때문에 실행결과에 영향을 주...
printf함수와 scanf함수의 기본 내용 입니다. 이 글을 읽으신 후 더 자세한 내용을 원하시면 자세한 printf...
컴퓨터는 2진수를 기반으로 데이터를 표현하고 연산도 진행한다. n진수 정의 n 개의 기호를 이용하여 데이...
컴퓨터는 데이터를 2진수로 표현을 하는데 정수와 실수를 2진수로 어떻게 표현하는지 알아보자. 정수의 표...
정의 미국 표준 협회(ANSI)에 의해 제정된 알파벳과 일부 특수문자 총 128개의 문자로 이루어진 코드 !...
정의 데이터의 표현반식을 바꾸는 것 ex) char형 데이터의 표현 방식을 int 형 데이터의 표현 방식으로 바...
https://blog.naver.com/sunghak93/222383755050 위의 포스트는 printf함수와 scanf함수의 기본적인 사용법...
정의 c언어에서 제공하는 반복문중 가장 단순한 구조를 갖는 반복문 반복조건을 만족하는 동안 중괄호 안의...
정의 while 문과 가장 유사하지만 while문과 반복의 조건을 검사하는 시점이 다른 반복문 반복영역을 최소...
정의 변수 선언, 반복의 조건, 반복의 조건을 무너트리기 위한 연산이 함께 있는 반복문 c언어에서 가장 많...