티스토리 뷰

웹 개발에 흥미가 생기고 이런저런 공부를 해보았는데, 일단 알고리즘 문제들은 자바스크립트 보다는 파이썬으로 연습해보는게 좋을 것 같아 다시 처음부터 시작해본다.

쉬운 것들이라고 넘어가지 말 것! 그래도 너무 쉬운것들의 포스팅은 몰아서 한번에 하려고 한다.

 

입출력과 사칙연산 단계

입출력과 사칙연산

www.acmicpc.net


1. 2557번 Hello World

print('Hello World!')

 

2557 출력

*key point:가장 기본인 print문으로 문자열을 출력할 수 있다.


2. 10718번 We love kriii

 1) 기본적인 방법

print('강한친구 대한육군\n강한친구 대한육군')

 2) 다른 시도

print('강한친구 대한육군', '강한친구 대한육군', sep='\n')

10718 출력

*key point: python의 개행문자(줄바꿈문자)는 \n(= \n)이다.


3. 10171번 고양이

print("\\    /\\")
print(" )  ( ')")
print("(  /  )")
print(" \\(__)|")

10171 출력

*key point: \를 출력하고 싶다면 \\로 입력하여야 한다. 개행문자처럼 특이한 기능을 위해 \기호가 사용되는 것과 구분하기 위함이다.


4. 10172번 개

print("|\_/|")
print("|q p|   /}")
print('( 0 )"""\\')
print('|"^"`    |')
print('||_/=\\\\__|')

10172 출력

*key point: '를 출력하고 싶다면 "로 둘러싸고, 반대로 "를 출력하고 싶다면 '로 둘러싸야한다.


5. 1000번 A+B

A, B = input().split()
print(int(A) + int(B))

1000 입출력

*key point: 기본적인 입력을 위해 input 함수를 이용한다. 또한, 입력이 한 줄에 이루어 지므로 split을 이용해 입력값을 공백을 기준으로 나누어 각 변수에 넣어줄 수 있고, int를 활용해 type을 바꾸어(형변환) 원하는 계산 값을 출력할 수 있다. (int를 사용하지 않으면 문자열의 합인 12가 출력될 것이다.)


6. 1001번 A-B

A, B = input().split()
print(int(A) - int(B))

1001 입출력

*key point: 1000번 문제에서 +만 -로 바꾸어주면 된다.


7. 10998번 A×B

A, B = input().split()
print(int(A) * int(B))

10998 입출력

*key point: 1000번 문제에서 +만 *로 바꾸어주면 된다. 문제에 (0 < A, B < 10)와 같은 조건이 주어져 있는데, 조건문을 사용하면 더 좋은 답안을 작성할 수 있을 것이다(입력값이 조건에서 벗어난 경우 다시 입력 값을 받는 기능 추가). 이 문제에서는 입력값이 정해져 있으므로 넘어간다.


8. 1008번 A/B

A, B = input().split()
print(int(A) / int(B))

1008 입출력

* *key point: 1000번 문제에서 +만 /로 바꾸어주면 된다. 


9. 10869번 사칙연산

 1) 기본적인 방법

A, B = input().split()
print(int(A) + int(B))
print(int(A) - int(B))
print(int(A) * int(B))
print(int(A) // int(B))
print(int(A) % int(B))

 2) 중복 최소화

A, B = map(int, input().split())
print(A+B, A-B, A*B, A//B, A%B, sep='\n')

 

10869 입출력

*key point: 몫과 나머지를 얻는 연산자는 각각 //와 %이다. map 함수는 리스트의 요소들에 지정된 함수를 동일하게 적용하는데 편리하다.


10. 10926번 ??!

print(input() + "??!")

10926 입출력

*key point: 문자열끼리 더하면 두 문자열이 연결된다.


11. 18108번 1998년생인 내가 태국에서는 2541년생?!

print(int(input()) - 543)

18108 입출력

*key point: 입력값을 정수로 형변환해준다. 불기와 서기는 543년이 차이난다.


12. 10430번 나머지

A, B, C = map(int, input().split())
print((A+B)%C, ((A%C)+(B%C))%C, (A*B)%C, ((A%C)*(B%C))%C, sep='\n')

10430 입출력

*key point: 10869번 문제와 유사하고 변수를 하나 늘려주기만 하면 된다.


13. 2588번 곱셈

A = int(input())
B = int(input())
print(A*(B%10), A*(B//10%10), A*(B//100), A*B, sep='\n')

2588 입출력

*key point: 입력 값이 공백 구분이 아니므로 각각 입력 받는다. 몫 나머지 등의 연산자를 적절히 이용하면 된다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함