728x90 반응형 전체 글510 [백준] 7568번 : 덩치 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 사람의 수를 입력받는다. N = int(sys.stdin.readline()) 사람마다 몸무게와 키를 입력받아 저장할 리스트를 생성한다. li = list() 사람의 수만큼 반복하며 for i in range(N) 각 사람마다 몸무게와 키를 입력받고 그 정보를 리스트로 저장한다. info = list(map(int, .. 2023. 7. 20. [자바(Java) 공부하기] 20. 다형성 - 우당탕탕 개발자 되기 프로젝트 여러 개의 형태를 갖는다라는 의미의 그리스어에서 유래된 다형성(polymorphism)은 하나 이상의 형태를 뜻합니다. Java에서 다형성이란 동일한 이름을 사용하지만 다양한 객체를 이용해서 다양한 실행 결과가 나오도록 하는 성질을 말합니다. 다형성은 부모 타입으로 자식 객체를 사용하는 것이므로 다형성을 구현하려면 메서드 재정의와 타입 변환이 필요합니다. 자식은 부모 타입으로 자동 타입 변환이 가능합니다. 이를 업캐스팅 또는 자동 타입 변환이라고 합니다. 업캐스팅은 부모 타입 변수 = 자식 객체; 형식으로 작성할 수 있습니다. 부모 타입으로 자동 타입 변환된 이후에는 부모 클래스에 선언된 필드와 메서드만 접근이 가능합니다. 변수는 자식 객체를 참조하지만, 변수로 접근 가능한 멤버는 부모 클래스 멤버로만 .. 2023. 7. 20. [프로그래머스] [1차] 캐시 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 리스트보다 연산 속도가 빠르고 popleft() 메서드를 사용할 수 있는 deque 자료구조를 사용하기 위해 deque 모듈을 불러온다. from collections import deque 먼저 도시 이름을 저장해 둘 deque을 생성한다. memory = deque() 도시 이름을 하나씩 추출하여 for i in cities 도시 이름 사이에 대소문자 구별이 없으므로 모두 소문자로 변환해 준다. i = i.lower() 만약 도시 이름이 앞에서 나온 적 있다면 if (i in.. 2023. 7. 19. [프로그래머스] 행렬의 곱셈 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 먼저 모든 행렬의 값이 0인 결과 행렬을 생성한다. 행렬의 곱셈 결과는 앞 행렬의 행의 개수 for i in range(len(arr1)) 행별로 값을 저장할 리스트를 생성한다. li = [] 뒤 행렬의 열의 개수로 결과가 반환된다. for _ in range(len(arr2[0])): li.append(0) 행별로 열의 값을 저장한 리스트를 추가한다. answer.append(li) 행렬의 곱셈을 하기 위해선 3중 for문이 필요하다. 결과의 위치 원소에 대한 결과는 앞 행렬의.. 2023. 7. 19. [자바(Java) 공부하기] 19. 상속 - 우당탕탕 개발자 되기 프로젝트 Java에서 상속이란 부모 클래스의 멤버를 자식 클래스에게 물려주는 것을 말합니다. 프로그램에서는 부모 클래스를 상위 클래스라고 부르고, 자식 클래스를 하위 클래스라고 부릅니다. 현실에서 상속은 부모가 자식을 선택해서 물려주지만, 프로그램에서는 자식이 부모를 선택합니다. 자식 클래스를 선언할 때 어떤 부모 클래스를 상속받을 것인지 결정하고, 선택된 부모 클래스는 extends를 적어 그 뒤에 나타내줍니다. 상속은 반복적으로 들어가는 공통적인 부분을 빼서 묶어주고 따로 속성을 추가적으로 지정할 수 있습니다. 따라서 상속을 사용하면 공통적인 부분을 일일이 기능 구현해 줄 필요가 없어지고, 코드도 쓸데없이 길어지지 않고 깔끔해져 나중에 수정할 때도 공통적인 부분 하나만 수정해 주면 되기 때문에 유지 보수가 쉽.. 2023. 7. 19. [프로그래머스] 폰켓몬 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 폰켓몬의 종류를 저장할 변수를 생성하고 set()를 활용해 중복 없이 폰켓몬의 종류를 저장한다. s =set(nums) 만약 폰켓몬의 종류가 가져갈 수 있는 폰켓몬 수보다 많거나 같다면 if (len(s) >= len(nums) // 2) 최대 고를 수 있는 폰켓몬 종류의 수는 가져갈 수 있는 폰켓몬 수와 같다. answer = len(nums) // 2 반면에 폰켓몬의 종류가 가져갈 수 있는 폰켓몬 수보다 적다면 else 최대 고를 수 있는 폰켓몬 종류의 수는 폰켓몬의 종류의 .. 2023. 7. 18. [프로그래머스] 명예의 전당(1) - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 문제 설명 2. 풀이과정 명예의 전당에 존재하는 점수를 저장할 리스트를 생성한다. hall = [] 점수를 하나씩 추출하여 for i in score 만약 명예의 전당에 올라갈 자리가 있으면 점수를 명예의 전당에 올린다. if (len(hall) min(hall)) 명예의 전당에서 가장 낮은 점수를 제거하고 hal.. 2023. 7. 18. [자바(Java) 공부하기] 18. 중첩 클래스 - 우당탕탕 개발자 되기 프로젝트 객체지향 프로그래밍에서 클래스는 서로 긴밀한 관계를 맺고 상호작용합니다. 클래스가 여러 클래스와 관계를 맺는 경우에는 독립적으로 선언하는 것이 좋지만, 특정 클래스와 관계를 맺는 경우에는 클래스 내부에 선언하는 것이 좋습니다. 이렇게 클래스 내부에 선언한 클래스를 중첩 클래스라고 합니다. 중첩 클래스를 사용하면 두 클래스의 멤버들을 서로 쉽게 접근할 수 있고, 외부에는 불필요한 관계 클래스를 감춤으로써 코드의 복잡성을 줄일 수 있다는 장점이 있습니다. 중첩 클래스는 클래스 내부에 선언되는 위치에 따라서 두 가지로 분류됩니다. 클래스의 멤버로 선언되는 중첩 클래스를 멤버 클래스라고 하고, 생성자 또는 메서드 내부에서 선언되는 중첩 클래스를 로컬 클래스라고 합니다. 멤버 클래스는 다시 인스턴스 멤버 클래스와.. 2023. 7. 18. [백준] 2581번 : 소수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 소수를 찾을 범위의 시작 값을 입력받는다. M = int(sys.stdin.readline()) 소수를 찾을 범위의 끝 값을 입력받는다. N = int(sys.stdin.readline()) 찾은 소수를 저장할 리스트를 생성한다. li = list() 범위에 있는 값을 하나씩 추출하여 for i in range(M, N + 1) 2부터 추출.. 2023. 7. 17. [백준] 11650번 : 좌표 정렬하기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 정렬할 점의 개수를 입력받는다. N = int(sys.stdin.readline()) 각 점의 좌표를 저장할 리스트를 생성한다. li = list() 점 개수만큼 반복하며 for _ in range(N) 점의 좌표를 입력받고 리스트로 저장한다. v = list(map(int, s.. 2023. 7. 17. 이전 1 ··· 31 32 33 34 35 36 37 ··· 51 다음 728x90 반응형