본문 바로가기

코딩/알고리즘_코드업24

코드업 파이썬 기초100제:6022_연월일 입력받아 나누어 출력 [문제] [설명] 25.01.09 와 같이여섯 자리로 된 연월일을 년도(25), 월(01), 일(09)로 구분하여 한 줄로 출력하라는 문제다. 즉 출력 결과는 다음과 같은 형태가 된다. 25 01 09 21번 문제에서 처럼 문자열 인덱스를 이용하면 쉽게 해결할 수 있다. *인덱스란 문자의 위치를 나타내는 값이다. 1)먼저 문자열을 입력받는다. str = input() 예를 들어, 250109를 입력했다고 하자. 이때, 문자열 변수 str에 저장된 문자열 250109의 인덱스는 다음과 같다. 인덱스 0 1 2 3 4 5 문자열 2 5 0 1 0 9 2)이제 문자를 2개씩 쪼개서 출력하면 된다. 문자열에 나란히 있는 문자를 두 개 이상 불러올 때, 인덱스 표기 방법은 다음과 같다. [시작 인덱스 : 끝 인덱.. 2023. 1. 9.
코드업을 비롯한 코딩 테스트 문제 풀이 팁 하나! 1. 대부분의 코딩 테스트는 비슷한 형식을 보인다. 문제 - 입출력 조건 - 입출력 예시... 등 문제를 풀고자 하는 사람들 대부분은 배치된 순서대로 문제를 먼저 읽고나서 입출력 조건... 순으로 읽어나갈 것이다. 여기, 문제 풀이에 도움될만한 간단한 팁을 소개한다. 2. 문제를 읽기 전에 입출력 조건을 먼저 읽자 코딩 테스트의 핵심은 조건에 맞게 데이터를 입력하고 처리한 결과를 출력하는 것이다. 따라서 무엇보다 입력과 출력이 중요하다. 특히, 코드업 전반부의 문제는 입력과 출력이 전부라고 생각해도 좋다. 문제를 접할 때, '그래서 나보고 어쩌라고?' 라는 마음으로 접근할 필요가 있다.(조금 공격적인가?^^;) 문제 풀이는 결국 '내가 해야할 일이 무엇인가?'를 파악하는 것이 핵심이다. 이를 '문제의 핵.. 2023. 1. 6.
코드업 파이썬 기초100제:6021_단어 1개 입력받아 나누어 출력 [문제] [설명] 문자열 값에서 각각의 문자를 뽑아내서 출력하라는 문제다. 예를 들어 world라는 문자열이 입력 됐을 때 다음과 같이 출력하면 된다. w o r l d 1. 먼저 문자열을 입력받는다. str = input() * 문자열은 영어로 string이므로 보통 변수명으로 s를 많이 사용한다. 위에서는 str을 사용했다. 2. 문자를 하나씩 뽑아서 출력한다. 여기서 핵심은 인덱스에 있다. 인덱스란 2개 이상의 값 중 특정한 값을 뽑아내기 위한 숫자다. 인덱스는 다음과 같이 표현된다. 인덱스 0 1 2 3 4 문자열 w o r l d 즉 world라는 문자열이 있다면 첫 문자인 w는 인덱스 0의 위치에 있고, 문자 d는 인덱스 4의 위치에 있다. 만약 str 변수에 문자열 world가 기억되어 있다.. 2023. 1. 5.
코드업 파이썬 기초100제:6020_주민번호 입력받아 형태 바꿔 출력 [문제] [설명] 18번부터 계속 같은 패턴의 문제다. 문제에서 요구하는 입력 형식은 주민번호 형식이다. 예를 들면 다음과 같다. 050907-1121112 출력 형식은 위 예시에서 하이픈(-)만 제거한 다음과 같은 형태다. 0509071121112 이제 차례대로 입력받고 출력해 보자. 1) 입력받기 입력받을 값은 두 개의 문자열이다. 하이픈(-)왼쪽에 위치한 문자열 (예:050907) 하이픈(-) 오른쪽에 위치한 문자열 (예: 1121112) 두 개의 문자열 값을 입력받기 위해 split() 함수를 사용한다. 각 값을 구분하기 위한 기호 -를 split() 함수의 괄호 안에 사용한다. 입력을 위한 코드는 다음과 같다. x, y = input().split('-') 2) 출력하기 x, y에 각각 구분되어.. 2022. 12. 30.
코드업 파이썬 기초100제:6019_연월일 입력받아 순서 바꿔 출력하기 [문제] [설명] 문제가 정한 형식으로 입출력하는 문제다. 18번을 푼 사람이라면 어렵지 않게 풀 수 있다. 다음은 문제에서 요구하는 입력 형식이다. 연도.월.일 1) 입력받기 연도, 월, 일, 3개의 값을 입력받기 위해 split() 함수를 사용한다. 각 값을 구분하기 위한 기호 . 를 split() 함수의 괄호 안에 사용한다. 코드는 다음과 같다. spilt('.') 이 코드는 입력 받는 값들을 . 를 사이에 두어 구분 짓는다는 뜻이다. 이상의 내용을 정리한 입력 코드는 다음과 같다. x, y, z = input(). split('.') *참고는 입력 값에 맞게 변수명을 year, month, day의 y, m, d를 사용함. 2) 출력하기 x, y, z 에 각각 구분되어 입력한 값을 -을 사이에 두.. 2022. 12. 27.
코드업 파이썬 기초100제:6018_시간 입력받아 그대로 출력하기 [문제] (입력 조건) 시(hour) 분(minute)이 콜론(':')으로 구분되어 한 줄로 입력된다. (입력 예시) 12:24 (출력 조건) 입력받은 시간 형식과 똑같이 "시:분" 형태로 출력한다. (출력 예시) 12:24 [설명] 문제에서 요구하는 형식으로 입력받아 출력하는 문제다. 그 형식은 다음과 같다. 시간 : 분 1) 입력받기 시간과 분, 2개의 값을 입력받기 위해 split() 함수를 사용한다. 이때, 유의할 점은 시간과 분에 해당하는 값을 구분하는 기호가 :이라는 점이다. 따라서 다음과 같이 값을 구분 짓는 기호 :를 split() 함수의 괄호 안에 사용한다. spilt(':') 이 코드는 입력받는 2개 이상의 값을 :를 사이에 두어서 구분 짓는다는 뜻이다. 따라서, 입력 코드는 다음과 같.. 2022. 12. 24.
코드업 파이썬 기초100제:6017_ 문장 1개 입력받아 3번 출력 [문제] [설명] 입력받은 값을 단순히 세 번 출력하는 문제다. print()함수르 이용하여 두 개 이상의 값을 나란히 출력하고자 한다면 사이에 쉼표(,)를 넣어주면 된다. 예를 들어 (예시1) 변수 a, b 두 개의 값을 출력한다면 print(a, b) (예시 2) 변수 a, b, c 세 개의 값을 출력한다면 print(a, b, c) 와 같은 형태가 된다. 문제에서 입력 받는 값은 문장, 즉 문자열이다. 따라서 자료형 변환은 필요 없이 입력만 받는다. 이후 세 번 출력하라고 했으므로 a = input() print(a, a, a) 와 같다. [답안 코드] a = input() print(a, a, a) 2022. 12. 17.
코드업 파이썬 기초100제:6016_ 문자 2개 입력받아 순서 바꿔 출력2 [문제] [설명] 먼저 공백(띄어쓰기)을 사이에 두고 문자 2개를 입력받는다. 앞서 배운 split() 함수와 input() 함수를 사용하면 다음과 같다. a, b = input().split() 이제 입력받은 값의 순서를 바꾸어 출력한다. 입력받은 a, b 순서를 뒤집어 주면 다음과 같다. print(b, a) [답안 코드] a, b = input().split() print(b, a) 2022. 12. 14.
코드업 파이썬 기초100제:6015_정수 2개 입력받아 그대로 출력하기2 [문제] [설명] 역시나 값을 입력받아 출력하는 문제다. 다만, 이번에는 줄 바꿈 없이 한 줄에서 두 개의 값을 입력받아야 한다. 우리가 알고 있는 input() 함수 만으로는 줄 바꿈 없이 두 개의 값을 입력받을 방법이 없다. 왜냐하면 input() 함수에 값을 입력하고 엔터를 누르는 순간 줄 바꿈이 일어나기 때문이다. 이때 필요한 함수가 바로 split() 함수다. split()함수는 이름처럼 문자열을 '나누어'준다 가장 간단한 사용 형태는 다음과 같다. 문자열.split() 예를 들어 'a b c'.split() 의 결과는 ['a', 'b', 'c']이다. 즉 공백(띄어쓰기)를 기준으로 문자를 한 개씩 '나누어'준다. 그 결과, 낱개인 문자 a, b, c로 나누어 졌다. 문제로 돌아가 보자. 이 문.. 2022. 12. 12.
코드업 파이썬 기초100제:6014_실수 1개 입력받아 3번 출력 [문제] [설명] 실수 형태의 자료를 한 개 입력받고 세 번 출력하라는 문제다. 실수를 입력받기 위해 두 단계가 필요하다. f = input() # 1) 단계 : input() 함수로 입력받기 f = float(a) # 2)단계 : 입력받은 값을 float()함수로 변환하기 위 두 단계를 다음과 같이 한 줄의 코드로 표현할 수 있다. f = float(input()) 이제 변수 f에 저장된 값을 세 번 출력하면 된다. 따라서 답안은 다음과 같다. [답안 코드] f = float(input()) print(f) print(f) print(f) [보충] 파이썬에는 자료의 형태를 구분하기 위한 자료형이 있다. 대표적으로 정수형, 실수형, 문자열 자료형 등이 있다. (간단하게 정수형은 소숫점이소수점이 없는 숫자.. 2022. 12. 11.
코드업 기초100제 파이썬:6012~6013정수 두 개 입력 받아 출력하기 [문제 : 6012번] [설명] 두 개의 정수를 입력 받아 출력하는 문제다. 예시에 나온 여섯 줄을 그대로 코딩해도 답이다. 이왕이면 코드를 함축적으로 줄여서 네줄로 표현해 보자. [또 다른 답안] 예시에서는 다음과 같이 두 단계에 걸쳐 정숫값을 입력받았다. 1)입력받기 : a = input() 2)정수로 변환 하기 : a = int(a) 위 두 단계를 다음과 같이 한 단계로 줄일 수 있다. a = int(input()) 이처럼 함수가 다른 함수를 포함하는 경우를 자주 볼 수 있다. 이 경우, 안쪽에 있는 함수①이 먼저 실행된 뒤 함수 ②가 실행된다. 따라서 이 코드의 실행 과정은 다음과 같다. ① input()함수가 실행돼 키보드로 입력받은 값을 가져온다. ② 입력 값을 int()함수가 정수로 변환한다.. 2022. 12. 8.
CodeUp_기초100제_파이썬_6002: [기초-출력] 출력하기02 [문제] [설명] 문자열을 표현하기 위해 문자열을 따옴표로 묶어주어야 한다. 이 사실을 알고 있는지 묻는 문제다. 이때, 사용하는 따옴표는 큰 따옴표(" ")나 작은따옴표(' ') 어떤 것이든 상관없다. [답안] print("Hello World") 또 다른 답도 있다. 문제는 친절하게 '참고'를 통해 그 방법을 설명하고 있다. [참고] print("문장 1", "문장 2") 도 "문장 1"과 "문장 2" 사이에 공백( )을 출력한다. 아래와 같은 코드를 예로 들어보자. print("A", "B") 이를 실행하면, A B 가 출력된다. 콤마( , )는 두 개의 출력 대상(A와 B) 사이에 공백(띄어쓰기) 한 칸을 추가해 준다. 두 번째 답안은 다음과 같다. [또 다른 답안] print("Hello","W.. 2022. 12. 4.
CodeUp_기초100제_파이썬_6004: [기초-출력] 출력하기04 [문제] [설명] 작은 따옴표( ' )를 포함한 문자열을 출력할 줄 아는지 묻는 문제다. 이 문제의 핵심은 문자열 좌우의 따옴표는 본래 출력이 되지 않는다는 사실이다. 예를 들어 print('Hello')를 실행하면, 출력되는 것은 Hello 뿐이다. 'Hello'와 같이 따옴표를 포함한 문자열을 출력하고 싶다면 이들 문자열을 큰 따옴표로 묶어주어야 한다. print(" 'Hello' ") [정답코드] print("'Hello'") [one more thing] "Hello"와 같이 큰 따옴표(")를 포함한 문자열을 출력하고 싶다면, 다음과 같이 전체를 작은 따옴표( ' )로 묶어주면 된다. print(' "Hello" ') 2022. 12. 4.
CodeUp_기초100제_파이썬_6003: [기초-출력] 출력하기03 [문제] [설명] 줄을 바꾸어 출력할 수 있는지 묻는 문제이다. print( )함수는 기본적으로 출력할 내용을 출력한 뒤 줄바꿈을 한다. 예를 들어, 다음과 같은 두 줄의 코드가 있다고 하자. print('A') print('B') 위 코드를 를 실행하면 결과는 다음과 같다. A B 따라서 문제의 답은 간단하다. print()함수 안에 있는 A 대신 Hello를, B 대신 World를 넣으면 된다. 정답은 다음과 같다. [정답코드] print('Hello') print('World') 2022. 12. 1.
CodeUp_기초100제_파이썬_6001 & 프로그래밍 기초 [문제] [설명] 파이썬의 기본 출력 함수인 print() 함수의 사용방법을 묻는 기초적인 문제입니다. [정답 코드] print("Hello") 문제가 너무 쉽죠? 코드업 1번 문제를 print() 함수를 이용한 출력으로 정한 데는 나름 이유가 있다고 생각합니다. 바로 출력이 프로그래밍의 기본 요소이기 때문입니다. 최근에는 프로그래밍보다 조금 더 캐주얼하게 코딩이라는 용어를 많이 사용합니다. 어떻게 부르든 간에 코딩이나 프로그래밍은 프로그램(앱, Application)을 만들기 위한 행동입니다. 그리고 출력은 프로그램에 빠져서는 안 될 기본 요소입니다. 시시해 보일지 모르지만 코드업 1번 문제가 출력이라는 점은 이런 배경이 있다고 생각합니다. 다음은 프로그래밍의 기본 요소에 관한 설명입니다. [프로그래밍.. 2022. 11. 24.