반응형

분류 전체보기 269

[파이썬] 단계별 백준 문제 풀기 - 1157 문자열 (단어공부)

문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. A = input().upper() #A의 값의 출력은 대문자로 들어가야하니 처음부터 대문자 출력 word_list = list(set(A)) #집합 함수 set()으로 중복값 제거 후 리스트화 most_word = [] #빈도수를 넣는 리스트를 빈채로 생성 for w in w..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 4673 함수 (셀프넘버)

Hint : 전체 수에서 생성자가 있는 수를 구해서 빼주자!!! 문제 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, 이 수를 시작해서 n, d(n), d(d(n)), d(d(d(n))), ...과 같은 무한 수열을 만들 수 있다. 예를 들어, 33으로 시작한다면 다음 수는 33 + 3 + 3 = 39이고, 그 다음 수는 39 + 3 + 9 = 51, 다음 수는 51 + 5 + 1 = 57이다. 이런식으로 다음과 같은 수열을 만들 수 있다. 33, 39, 51, 57, 69, 84, 96, 111, 114, 1..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 4344 1차원 배열 (평균은 넘겠지)

문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. N = int(input()) # 테스트케이스의 개수 for _ in range(N): #테스트케이스를 순서대로 반복 A = list(map(int,input().split())) #테스트케이스 하나의 값들을 list화 = A avg =..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 1110 While문 더하기 사이클

문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 ..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 2884 IF문 알람 시계

문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를 언제로..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 2588 곱셈

문제 (세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다. (1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다. 출력 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. a = int(input()) b = int(input()) c = b//100 d = (b-c*100)//10 e = b%10 print(a*e) print(a*d) print(a*c) print(a*b) 472 385 2360 3776 1416 181720 - 입력값이..

알고리즘 2021.03.06

[파이썬] 단계별 백준 문제 풀기 - 10869 사칙연산

문제: 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 입력: 두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000) 출력: 첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다. input_data = input().split() A = int(input_data[0]) B = int(input_data[1]) print(A+B) print(A-B) print(A*B) print(A//B) print(A%B) 7 3 10 4 21 2 1 // : 몫 % : 나머지 int() : 문자형에서 숫자형으로 형변환 split() : 특정 문자를 기준으로 문자열 분..

알고리즘 2021.03.06

항해99를 시작하며

항해99를 시작하며 항해99 개요 - 일정: 3/1(월)~ 6/4(금) 14주 - 항해99 배경&목적: 시장에 좋은 개발자가 없다? -> 좋은 개발자가 되어, 그런 개발자들이 모인 곳에 합류하는 것! 14주 커리큘럼 요약 Chap1 1주 : 미니 프로젝트 Chap2 2~3주: 자료구조/알고리즘 Chap2 4~5주: 주특기 기본/심화 Chap2 6주: 클론코딩 Chap2 7~8주: 주특기 미니프로젝트 Chap2 9~13주: 실전프로젝트 w 디자이너 (런칭&고객 의견 개선) Chap2 14주: 지원(이력서 작성,면접 연습, 지원) 항해99 규칙 - 목표: 주 100시간 코딩 - 협업능력 기르기! - 개발 능력 50% + 협업능력 50% 첫날부터 프로젝트 시작이라니 속도가 무섭게 빠르다. 1일차부터 99일이 ..

부트캠프 항해99 32조, 1주차 S.A(Starting Assignment)

- 팀명: 32조 - 팀장: 곽혜미 - 팀원: 박현준, 여지영 - 일자: 3/1(월) DAY+01 - 프로젝트명: 웹개발 미니프로젝트 1. 32조 프로젝트 제목 및 간단 설명 제목: 좋아하는 국내 여행지 기록 설명: 국내 여행 명소를 스크래핑하여, 지역별로 카드 리스트로 나열하고, 좋아하는 여행지 카드에 '좋아요' 를 클릭하면 마이페이지에 좋아요 클릭된 여행지들이 분류되어 확인 가능 2. 와이어프레임 사진 1) 로그인페이지 - ID/PW를 입력 후 로그인 성공 시 메인페이지 이동 - 미회원의 경우 회원가입 버튼을 누르면 로그인 창이 숨겨지고 회원가입칸 보임 2) 메인페이지 - 국내여행지기록(제목) - 우측 상단(MY PAGE) - 네비게이션바(서울/경기/제주/부산 등) -> 누르면 지역탭으로 이동 - 카..