전체 글 140

[백준/Python] 7568번: 덩치 (BruteForce)

1.문제 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 2. 해결 - 고민이 많이 되었던 문제이다. 버블 정렬을 통해 하나씩 정렬해볼까도 생각해봤는데 .. - 계속 안되다가 힌트를 보고 BruteForce를 이용해보아야겠다 .. ~ 고 생각했다. ** BruteForce Algorithm -비교대상 문자열을 처음부터 끝까지 모두 순회하면서 비교하는 알고리즘 그렇다 .. n개의 덩치들(?)을 나머지 n-1개와 비교해서 본인보다 큰 덩치의 수를 알면 끝나는 문제.. ! 3. 코드 n = int(in..

알고리즘/BOJ 2023.02.28

[백준/Python] 1978: 소수찾기

1. 문제 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 2. 해결 - 소수의 조건을 생각해보았다. 소수는 약수가 2개인 수이다. 소수의 약수는 1과 자기자신인 수인데.. - 주어진 수(num)이 소수임을 확인하기 위해서는 num을 2부터 num-1까지 하나하나 나누어보면서 나머지가 0이 아님을 보이면 되겠다! - for문 if문을 적절히 사용하고 - cnt를 통해 탐색하고 있는 수(num)이 소수일 때 +1씩 해주면 되겠다 ! 3. 코드 n = int(input()) nums = list(map(int,input().split())) def isPrime(num): if n..

알고리즘/BOJ 2023.02.27

[리액트 실습] 간단 영화 앱 만들기 7 (상세 페이지 만들기)

* 유튜브 인브로즈님의 실습 영상을 학습한 뒤 작성하는 포스팅입니다. [리액트 실습] 간단 영화 앱 만들기 6 (헤더 만들기) [리액트 실습] 간단 영화 앱 만들기 5 (React Routing) [리액트 실습] 간단 영화 앱 만들기 4 (1-3 코드) [리액트 실습] 간단 영화 앱 만들기 3 (components와 props) [리액트 실습] 영화 앱 만들기 2 (리액트 개 0lrlokr.tistory.com 아마 간단 영화 앱 만들기는 7편을 마지막으로 끝나지 않을까 싶다. 하지만 필자가 좀 더 배워서 TV프로그램 , 등장인물 등등 여러 페이지를 만들 수 있는 능력과 글을 쓸 수 있는 여유가 된다면 다시 돌아오도록 하겠다 .. 이번 포스팅에서는 이렇게 영화가 정렬된 화면에서 영화 화면을 누르면 클릭한..

개발/React 2023.02.27

[리액트 실습] 간단 영화 앱 만들기 6 (헤더 만들기)

[리액트 실습] 간단 영화 앱 만들기 5 (React Routing) [리액트 실습] 간단 영화 앱 만들기 4 (1-3 코드) [리액트 실습] 간단 영화 앱 만들기 3 (components와 props) [리액트 실습] 영화 앱 만들기 2 (리액트 개발환경 구축) [리액트 실습] 영화 앱 만들기 1 (tmdb a 0lrlokr.tistory.com 5에서 이어진다 ~ 이번 포스팅에서는 '헤더'부분에 대해서 코드를 짜 볼 예정이다. 아마 마켓컬리 클론코딩 헤터 포스팅과 유사한 부분이 많을 것이다. [리액트 실습] 마켓컬리 클론코딩 1. 헤더 만들기 3주차 과제는 ~~~ 마켓컬리 클론 코딩이다 ! 3주차에서는 SPA, routing에 대해서 배웠다. React Routing - Rising Camp 12th..

개발/React 2023.02.26

[리액트 실습] 간단 영화 앱 만들기 5 (React Routing)

[리액트 실습] 간단 영화 앱 만들기 4 (1-3 코드) [리액트 실습] 간단 영화 앱 만들기 3 (components와 props) [리액트 실습] 영화 앱 만들기 2 (리액트 개발환경 구축) [리액트 실습] 영화 앱 만들기 1 (tmdb api 발급) 1. 실습 영상 찰스님의 실습 영상을 보 0lrlokr.tistory.com 헤더 + 상세페이지가 있는 앱을 만들어볼 예정이다. 1. SPA vs MPA 이번에는 지난번까지 만들었던 간단 영화 앱에서 최신 영화 목차에서 더 나아가 클릭하면 영화의 일부 정보가 뜨는 '상세 페이지'와 페이지 이동까지 만들어 볼 예정이다. 리액트에서는 페이지 이동을 위해 react-route-dom을 활용한다. ** react-route-dom : SPA방식의 애플리케이션에..

개발/React 2023.02.26

[백준/Python] 8979: 올림픽

1. 문제 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 2. 해결 - 우선 얻은 금메달, 은메달, 동메달 수의 순서대로 리스트를 정렬한다. - sort, lambda함수를 이용하여 정렬하였다. - 등수를 찾을 때 for 문을 돌며 n과 함께 주어진 국가번호 k의 index(정렬한 리스트의 등수 -1) 를 찾는다. - 등수가 중복되는 국가의 공동 등수를 지정하기 위해 for문을 돌며 k국가의 모든 메달 수 가 같은 국가가 나오면 그 국가의 (index+1)등이므로 출력해준다. 3. 코드..

알고리즘/BOJ 2023.02.25

[백준/Python] 14593번: 2017아주대학교 프로그래밍 경시대회(Large)

1. 문제 14593번: 2017 아주대학교 프로그래밍 경시대회 (Large) 아주대학교 프로그래밍 경시대회(Ajou Programming Contest, APC)는 2009년 제1회를 시작으로 2014년 제6회까지 개최된 아주대학교 학생들을 위한 프로그래밍 경시대회이다. 2017년, 다른 학교에서 활발히 www.acmicpc.net 2. 해결방법 3개의 정수를 입력받고 각각 내림차순, 오름차순, 오름차순으로 정렬하여 풀어야한다. 만약 람다함수를 몰랐다면 중복 체크때문에 코드가 조금 더 길어졌을 것 같다. 3.코드 n = int(input()) playes = [] for i in range(n): play = list(map(int,input().split())) playes.append(play) p..

알고리즘/BOJ 2023.02.24

[백준/Python] 15905번: 스텔라(STELLA)가 치킨을 선물했어요 (람다함수 정렬)

1. 문제 15905번: 스텔라(STELLA)가 치킨을 선물했어요 경인지역 6개대학 연합 프로그래밍 경시대회 shake! 는 아주대학교, 경희대학교, 성균관대학교, 인하대학교, 한국항공대학교, 한양대학교ERICA가 함께하는 대학교 자체 연합 대회이다. shake! 는 매 www.acmicpc.net 2. 문제해결 정렬문제이다. 문제는 정렬해야할 대상이 2개라는 것 이때 문제해결을 쉽게 할 수 있는 함수가 바로 람다함수이다. 람다함수에 대해서는 아래 자세하게 설명하겠다 생각해본 알고리즘 - 입력받은 참가자들의 해결한 문제 수와 패널티 총 합을 입력받고 playes(이중 리스트)에 넣기 - playes를 해결한 문제 수 내림차순, 패널티 총 합 오름차순으로 정렬하기 - playes에서 5등의 해결한 문제 수..

알고리즘/BOJ 2023.02.24

[백준/Python] 5533번 : 유니크 (이중리스트에서 중복체크)

1. 문제 5533번: 유니크 첫째 줄에 참가자의 수 N이 주어진다. (2 ≤ N ≤ 200) 둘째 줄부터 N개 줄에는 각 플레이어가 1번째, 2번째, 3번째 게임에서 쓴 수가 공백으로 구분되어 주어진다. www.acmicpc.net 2. 풀이 - 입력받는 세 숫자에 대해 세로로 비교하여 중복된 숫자가 있다면 더할 수 없다 . 3. 코드 n = int(input()) games = [] for _ in range(n): game = list(map(int,input().split())) games.append(game) for i in range(n): ans = 0 for j in range(3): cur = games[i][j] check = 1 for k in range(n): if k == i: ..

알고리즘/BOJ 2023.02.24

[백준/Python] 1181번: 단어정렬

1. 문제 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 2. 해결방안 - 입력 받은 단어의 중복 제거 - 입력 받은 단어 알파벳 순으로 정렬 - 입력 받은 단어 길이순으로 오름차순 sort()를 알면 어렵지 않은 문제였다 ! 3. 코드 n =int(input()) words = [] for i in range(n): words.append(input()) words.sort() #알파벳 순 정렬 words.sort(key = len) # 길이 순 정렬 ans = [] #중복제거 for word ..

알고리즘/BOJ 2023.02.22