본문 바로가기
728x90
반응형

Python437

[파이썬(Python) 공부하기] 12. 세트(Set) - 우당탕탕 개발자 되기 프로젝트 set(세트)는 자료를 { }로 묶어서 나타낸 자료형입니다. 공백의 세트를 생성할 때는 set() 함수를 사용하여 생성해 줍니다. 그냥 { }를 빈 상태로 두면 딕셔너리로 인식하게 됩니다. set는 순서가 없는 자료형입니다. 따라서 인덱스 개념이 존재하지 않아 인덱싱이 불가능합니다. 또한 인덱싱이 불가능하므로 슬라이싱도 불가능합니다. set는 중복이 없는 자료형이므로 리스트를 세트 자료형으로 나타내면 중복되어 있던 원소들을 제거해 주어 오로지 각 원소의 값이 하나씩만 존재하도록 만들어줍니다. set는 교집합(&), 차집합(-), 합집합(|)과 같은 연산을 할 수 있습니다. set에 원소를 추가할 때는 add() 함수를 사용합니다. 세트명.add(원소) 형식으로 작성하면 원소를 해당 세트에 추가합니다. 반.. 2023. 7. 3.
[프로그래머스] JadenCase 문자열 만들기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 문자열에서 공백 문자가 연속으로 나올 수도 있으므로 split() 함수를 사용하여 각 단어를 분리할 수 없다. 하여 입력받은 문자열을 계속 그대로 가져가며 바꿔주었다. 입력받은 문자열을 모두 소문자로 바꾼 후 각 문자별로 분리하여 리스트로 저장한다. s = list(s.lower()) 만약 첫 번째 글자가 공백이 아니고 숫자도 아니라면 if (s[0] != ' '): if (not(s[0].isnumeric())) 첫 번째 글자는 영문자이고 문자열의 첫 글자이므로 대문자로 바꿔준.. 2023. 7. 3.
[파이썬(Python) 공부하기] 11. 클래스(Class) - 우당탕탕 개발자 되기 프로젝트 class(클래스)는 특정 집단이 가지고 있어야 하는 속성과 행동을 변수와 메서드(함수)로 묶어놓은 코드 집합을 말합니다. class 또한 함수와 마찬가지로 생성하고 사용해주지 않으면 쓸모가 없습니다. class 클래스명: 속성과 메서드들 형식으로 작성해 주면 클래스가 생성됩니다. 클래스를 사용할 때는 변수명에 클래스명()을 대입해 주어 클래스를 불러옵니다. 변수명 = 클래스명() 이후 클래스의 속성들을 사용할 때는 클래스를 받은 변수명에 .을 붙이고 속성이나 메서드명을 붙여 사용하면 됩니다. 변수명.속성 이나 변수명.메서드명() 형식으로 사용할 수 있습니다. 라이브러리나 클래스를 다른 파일에서 불러올 때 사용하는 키워드가 import입니다. import를 사용할 때 다양하게 변형하여 사용할 수 있습니다.. 2023. 7. 2.
[파이썬(Python) 공부하기] 10. 함수 - 우당탕탕 개발자 되기 프로젝트 함수는 def 함수 이름 (매개변수1, 매개변수2, ...): 함수의 기능 구현 문장들 return 반환값 형식으로 생성합니다. 함수는 선언하는 부분과 사용하는 부분으로 나뉩니다. 함수는 사용되려고 있는 것이다 라고 할 수 있습니다. 함수를 호출할 때는 함수 이름(인수1, 인수2, ...) 형식으로 호출해 주면 됩니다. 함수를 사용할 때 함수를 정의한 매개변수의 개수와 함수를 호출할 때 입력해 준 인수의 개수가 동일해야 합니다. 함수 안에서 return 문을 여러 번 작성할 수 있지만 return 문이 한 번 실행되면 함수는 바로 종료됩니다. 2023. 7. 2.
[백준] 10828번 : 스택 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 라이브러리를 불러온다. import sys 전체 명령어 수를 입력받는다. N = int(sys.stdin.readline().rstrip()) 명령어 수행의 결과를 나타내줄 리스트를 생성한다. li = list() 전체 명령어 수만큼 반복한다. for _ in range(N) 명령어를 입력받는다. Str = sys.stdin.readline().rst.. 2023. 7. 2.
[백준] 1316번 : 그룹 단어 체커 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 1. 문제 설명 2. 풀이과정 전체 테스트 케이스의 개수를 입력받는다. N = int(input()) 그룹 단어의 개수를 세어줄 변수를 생성하고 초기화한다. count = 0 전체 테스트 케이스 횟수만큼 반복한다. for _ in range(N) 각 테스트 케이스 별로 그룹 단어를 판별할 문자열을 입력받는다. word = input() 입력받은 문자열을 단어로 분리해 저장할 리스트를 생성한다. li = list() 각 문자별 횟수.. 2023. 7. 2.
[백준] 9012번 : 괄호 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 제일 위에 sys 라이브러리를 불러온다. import sys 전체 테스트 케이스 횟수를 입력받는다. T = int(sys.stdin.readline()) 테스트 케이스 횟수만큼 반복한다. 반복문의 변수가 필요 없을 땐 _를 사용할 수 있다. for _ in range(T) 판별할 문자열을 마지막 enter 입력을 제외하고 입력받는다. strin.. 2023. 7. 2.
[백준] 2292번 : 벌집 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 1. 문제 설명 2. 풀이과정 방 번호를 입력받는다. N = int(input()) 방의 최대 번호를 저장해 줄 변수를 선언하고 시작 값인 1로 초기화해 준다. num = 1 방의 개수를 저장해 줄 변수를 선언하고 초기화해 준다. count = 0 무한 반복문을 활용하여 원하는 시점에서 종료할 수 있도록 구현해 준다. while (True) 방의 최대 번호에 지나갈 방의 개수에 육각형의 6을 곱해준 값을 더한다. num += count * 6 벌집의 중앙에서 한 줄씩 넓.. 2023. 7. 2.
[백준] 15596번 : 정수 N개의 합 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 1. 문제 설명 2. 풀이과정 함수를 작성하는 문제이므로 함수를 작성한다. def solve(a) 합을 저장할 변수를 생성하고 초기화한다. ans = 0 매개변수로 입력받은 리스트의 원소를 하나씩 추출한다. for i in a 추출한 원소를 결과에 더한다. ans += i 최종 결과를 반환한다. return ans 3. 소스코드 def solve(a): ans = 0 for i .. 2023. 7. 2.
[프로그래머스] 직사각형 별찍기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 입력받은 가로의 길이와 세로의 길이 중 각 세로의 길이별 가로의 길이만큼 별을 각 줄에 찍어주도록 구현한다. 세로의 길이만큼 반복을 진행한다. for i in range(b) 각 줄은 가로의 길이만큼 반복한다. for j in range(a) 각 세로줄에서 가로의 줄 길이만큼 별을 찍어준다. print('*', end='') 각 줄의 별을 모두 찍었으면 다음 줄로 넘겨준다. print() 3. 소스코드 a, b = map(int, input().strip().split(' ')).. 2023. 7. 2.
728x90
반응형