코딩일지 218

python 백준 알고리즘 11720번: 숫자의 합

https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 내 제출 n = int(input()) # n개의 케이스 nums = list(input()) # 공백없이 쓰여있는 숫자 입력 sum = 0 for i in range(n) : sum += int(nums[i]) # for문을 이용해 전부 더해버리기 print(sum) for문을 이용해 총 합을 구하는 딱히 어려울 건 없는 문제였다. 정보를 더욱 찾아본 결과 sum 함수를 이용해 더 간단히 풀 수 있었다. print(sum(map(int,input())))

python 백준 알고리즘 11654번: 아스키 코드

https://www.acmicpc.net/problem/11654 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net ※아스키 코드 ASCII (American Standard Code for Information Interchange, 미국 정보 교환 표준 부호) 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기초를 두고 있다. 아스키는 7비트 인코딩으로, 33개의 출력 불가능한 제어 문자들과 공백을 비롯한 95개의 출력 가능한 문자들로 총128개로 이루어진다. ..

20220913 클래스 활용해보기

1. 도형 넓이 계산기 num1 = int(input('첫 번째 숫자를 입력 : ')) num2 = int(input('두 번째 숫자를 입력 : ')) class calc_area: def __init__(self, num1, num2): self.num1 = num1 self.num2 = num2 def square(self): result = self.num1 * self.num2 return result def triangle(self): result = self.num1 * self.num2 / 2 return result def circle(self): result = (self.num1 / 2) **2 * 3.14 # 첫번째 숫자를 원의 지름(2r)으로, 𝝿r² return result are..

20220912 WIL

이번주동안 한 일 python 강의 git 활용 강의 백준 알고리즘 문제 풀이 python 강의 https://yaun.tistory.com/161 20220907 숫자야구 게임 고려해야 할 사항 몇 자리 숫자(count)로 할 건지 입력받기 -> 받은 숫자를 이후의 함수에도 적용시켜야하는데?? -> 전역변수화 (global) count의 조건 3자리수 이상 10자리 수 이하 -> if 문 활용해 오류 yaun.tistory.com 지금까지 배워 온 것들을 총망라하는 느낌으로 만든 숫자야구 게임 과제물 링크. 원하는 작동방식 구상 -> 코드로 짜보기 -> 안되는부분 구글링으로 정보 구하기 의 형식으로 진행해보았다. 만족스러운 결과물이 나와 아주 기분좋았습니다.. git 활용 강의 https://yaun...

20220908 TIL

오늘의 한 일 Git 활용 기초 강의 1~3주차 git 프로젝트 둘러보기 명령어로 깃 다루기 특강 Git 활용 기초 강의 1~3주차까지 https://github.com/didjsrne/TIL GitHub - didjsrne/TIL: 오늘의 배운 것 오늘의 배운 것. Contribute to didjsrne/TIL development by creating an account on GitHub. github.com 배운 글 정리는 실습과 함께 깃허브에 저장 깃허브 자체는 이런 저런 프로그램들 쓰느라 많이 찾아보긴 했는데, 실제로 계정을 만들고 내가 직접 프로젝트를 진행하기 위해 쓰는것은 처음이라 배우면서 굉장히 신선했다. 커밋 수정 연습중에 실제로 일어날 법한 병합충돌 오류도 일어나서 해결하면서 경험치도..

20220907 TIL

오늘의 한 일 python 강의 3일차 과제 숫자야구 만들기 python 강의 반복문 for, while for문 list, tuple, set 자료형의 요소들로 반복문을 사용할 수 있습니다. numbers = [1, 2, 3, 4] for number in numbers: print(number) # result print """ 1 2 3 4 """ members = ("lee", "kim", "park") for member in members: print(member) # result print """ lee kim park """ enumerate()를 사용해 반복되는 요소가 몇번째인지 확인할 수 있습니다. members = ["lee", "park", "kim"] for i, member in..

20220907 숫자야구 게임

고려해야 할 사항 몇 자리 숫자(count)로 할 건지 입력받기 -> 받은 숫자를 이후의 함수에도 적용시켜야하는데?? -> 전역변수화 (global) count의 조건 3자리수 이상 10자리 수 이하 -> if 문 활용해 오류시 재입력 랜덤 변수 뽑아내기(중복차단) -> 중복 차단을 위해 set 자료형을 활용 -> 계속 번호가 정렬되어서 나옴 why? set 자료형은 기본적으로 "순서"라는 개념이 존재하지 않는다. 때문에 값을 add 하더라도 랜덤한 순서로 저장되는 것이 아닌, set 자료형의 특성에 맞게 순서가 변경되기 때문. 해결방안 : if 변수 not in 리스트 형식으로 변수중복 차단 내 답안지 입력 -> count 숫자만큼 답안지 입력, "exit" 입력시 게임종료(exit()), 9를 초과하..

20220906 TIL

오늘의 한 일 python 강의 2일차 과제 계산기 만들기 백준 알고리즘 문제 풀이 python 강의 2일차 python 활용 자료형 활용하기 사칙연산 파이썬에서는 integer와 float 자료형에서 활용할 수 있는 다양한 종류의 사칙연산을 지원하고 있습니다. x + y 더하기 x - y 빼기 x * y 곱하기 x ** y 제곱(x의 y제곱) x / y 나누기, int와 int를 나누더라도 연산 결과는 항상 float이 나온다. 5 / 2 → 2.5, 4 / 2 → 2.0 x // y 나머지 없는 나누기, 어떤 값을 나누더라도 항상 정수로 떨어진다. 5 // 2 -> 2, 4 // 2 -> 2, 4.0 // 2.0 -> 2.0 x % y 나머지를 구하는 연산 8 % 3 -> 2, 5.0 % 2.0 ->..

python 백준 알고리즘 1065번: 한수

https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net ※ 각 자리가 등차수열 -> 한자리수, 두자리수 숫자는 전부 한수일 것이다.(예제 1로 추측) 셀프넘버 문제와 비슷한 방식으로 숫자를 자리수대로 분리하여 비교하기. 1,000은 한수가 아니기때문에 세자리 수 안에서만 비교해서 백의자리 - 십의자리 == 십의자리 - 일의자리 이면 등차수열(한수) 성립. num_list = list(map(int,str(i))) ### 숫자를 자릿수대로 분리 num_li..

python 백준 알고리즘 4673번: 셀프 넘버

풀이 전체 1~10,000까지의 수에서 생성자를 구하는 식 을 사용해 생성자 리스트에 추가한 뒤(append) for n in str(num): ### ex) 280 num += int(n) ### num = 280 + int('280[0]') + int('280[1]') + int('280[2]') = 280 + 2 + 8 + 0 전체 수에서 생성자 리스트를 빼는 형식으로 셀프 넘버를 구한다. 내 제출 numbers = set(range(1,10_001)) ### 1~10000까지 ganarated_num_list=[] ### 생성자 리스트 for num in numbers: for n in str(num): ### ex) 63 num += int(n) ### num = num + int(n[0]) +..