10871번,10950번,2753번,2588번
<10871번>
https://www.acmicpc.net/problem/10871
10871번: X보다 작은 수
첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.
www.acmicpc.net
1번째 시도)
N = int(input())
X = int(input())
A =list(map(int,input().split()))
result=[]
for i in range(0,N):
if A[i]<X:
result.append(A[i])
print(result)
>>컴파일 에러
한줄에 N,X 값을 모두 받아야하는데 다른 줄로 받아서 생긴 에러인 것 같다..
입력 값을 엔터로 구분하지 않고 한줄에 여러 값 받으려면 split()함수 사용
그리고 마지막에 result를 print 해버리면 리스트 형태로 출력되기 때문에 숫자만 출력될 수 있도록 바꿔야한다.
그러기 위헤서 print에 end 옵션 사용
2번째 시도)
N,X=map(int,input().split())
A =list(map(int,input().split()))
result=[]
for i in range(0,N):
if A[i]<X:
result.append(A[i])
for i in range(0,len(result)):
print(result[i],end=' ')
<10950번>
https://www.acmicpc.net/problem/10950
10950번: A+B - 3
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
첫번째 시도)
T=int(input())
p_list=[]
result_lsit=[]
for i in range(0,T):
A,B=map(int,input().split())
p_list.append((A,B))
for (first,last) in p_list:
result_lsit.append(first+last)
for i in range(0,T):
print(result_lsit[i])
>>그냥 실행해 봐도 안되는데..
아이디어는 입력한 정수만큼 A,B를 리스트로 짝지어 또 다른 리스트에 저장한 후, 짝지어진 리스트들의 합을 출력하는 것..
리스트를 짝지어서 다른 리스트에 넣는 방법을 잘 모르겠다.
2번째 시도)
T=int(input())
for i in range(0,T):
A,B=map(int,input().split())
print(A+B)
>>정답
내가 너무 어렵게 생각한 건가...?A,B 한 쌍을 입력하고 바로 답을 출력하는 것은 간단하지만
답을 한번에 출력하는 방법은...좀 더 생각해 봐야겠다.
정답처리는 되지만 리스트로 받아서 다른 리스트의 넣는 방법 알아보기!!!
<2753번>
2753번: 윤년
연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서
www.acmicpc.net
year=int(input())
if year%4==0 and year%100!=0:
print('1')
elif year%400==0:
print('1')
else:
print('0')
<2588번>
2588번: 곱셈
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
www.acmicpc.net
a=int(input())
b=int(input())
print(a*(b-(b//10)*10))
print(a*((b%100)//10))
print(a*(b//100))
print((a*(b-(b//10)*10))+(a*((b%100)//10))*10+(a*(b//100))*100)