목록PROGRAMMING::LANGUAGE (60)
Love Every Moment

1. 문자열 문자열의 각 요소는 인덱스를 가진다 fruit[0] 은 'b', fruit[1] 은 'a' 이런 식으로 값이 지정된다 len() 의 인자로 문자열을 넘겨주면 문자열의 길이를 반환한다 2. 문자열 순회하기 for 문 또는 while 문 모두 사용 가능하지만, for 문을 사용하는 것이 훨씬 간단하다. 마지막 사진에서의 in 은 논리 연산자로써 사용된 것으로, True/False 를 반환해준다. 3. 문자열 다루기 (1) 문자열 슬라이싱 문자열명[a : b] 의 형식으로 문자열을 a번째부터 (b - 1)번째까지 잘라서 사용 가능하다 b 번째는 포함하지 않고 (b - 1)까지만 포함한다는 것에 유의! (up to but not including) (2) 문자열 합치기 + 연산자를 사용하면 여러 문..

1. while 루프 while : 에서 안의 내용이 참이면 계속해서 반복문을 수행한다 조건문 안의 n 을 Iteration variable 이라고 한다 2. while 루프 제어하기 (1) break 만약에 while True: 와 같이 조건문이 언제나 참인 경우 무한루프에 빠지게 된다 이것을 탈출하기 위해서는 왼쪽 사진과 같이 break 사용이 필요하다 break 를 사용하면 해당 루프를 빠져나오게 된다 (2) continue continue 는 루프의 시작 지점으로 다시 돌아가게 한다 break 는 루프를 아예 탈출하지만, continue 는 아래의 코드는 건너뛰고 다시 루프의 시작점으로 돌아간다는 점이 차이 3. for 루프 for A in B : 의 형식으로 사용하며, A 가 B 를 순회하여 끝..

출처 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 예제 # 입력 5 5 50 50 70 80 100 7 100 95 90 8..

출처 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net 문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 예제 # 입력 1 2 3 4 5 6 7 8 9 10 # 출력 10 풀이 - (1) numbers = [] remainders = [] cnt = 10 for i in range(10) : numbers.append(int(input()..

출처 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 문제 세 개의 자연수 A, B, C가 주어질 때 A × B × C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. 예를 들어 A = 150, B = 266, C = 427 이라면 A × B × C = 150 × 266 × 427 = 17037300 이 되고, 계산한 결과 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다. 예제 # 입력 150 266 427 # 출력 3 1 0 2 0 0 0 2 0 0 풀이 - (1) import sys n..

출처 1차원 배열 단계 각 숫자가 몇 번 나왔는지 저장하기 위해 일차원 배열을 만드는 문제 www.acmicpc.net 문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. 첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력하라. 예제 # 입력 5 20 10 35 30 7 # 출력 7 35 풀이 - (1) import sys cnt = int(sys.stdin.readline().rstrip()) numbers = list(map(i..

출처 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 예제 # 입..

출처 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 예제 # 입력 5 # 출력 * ** *** **** ***** 풀이 - (1) N = int(input()) for i in range(1, N + 1): print("*" * i) 풀이 - (2) N = int(input()) for i in range(1, N + 1): j = 1 while j