원본: https://www.acmicpc.net/problem/1000
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
첫째 줄에 A+B를 출력한다.
1. Python 코드
1
2
|
a, b = map(int,input().split())
print (a+b)
|
A, B를 입력받는 input().split()의 결과는 문자열 리스트입니다. python의 map을 사용해서 정수로 변환해봅시다.
리스트의 요소를 int로 변환, 결과는 맵 객체로 대입해주면 됩니다.
최단길이로 작성하기에는 파이썬 코드가 적합합니다. 결과를 보면 코드길이가 43Byte로 매우 짧지만, 단순한 작업인데도 메모리가 크다는 단점이 있어요. 그래서 저는 C 언어로 한번 작성해봤습니다.
2. C++ 코드
1
2
3
4
5
6
7
|
#include<stdio.h>
int main(){
int a, b;
scanf("%d%d",&a,&b);
printf("%d",a+b);
}
|
C++언어로는 단순하게 A와 B를 scanf와 printf로 입출력해줬습니다. 이 코드를 visual studio로 실행해보고 싶으시다면 scanf 대신에 scanf_s로 변경 후에 실행해야 합니다. 이 오류에 대해 자세하게 다룬 게시글은 새로 올리도록 할게요.
이처럼 C++ 코드를 활용해 1000번 문제를 풀었을 때 메모리를 최대로 아낄 수 있어요. 저는 주로 C++로 풀이하곤 하는데, 가끔은 자신의 주 언어가 아닌 다른 언어로 문제를 풀어보는 것도 도움됩니다.
'Algorithm' 카테고리의 다른 글
[프로그래머스 Java] 큰 수 만들기 알고리즘 (0) | 2020.03.23 |
---|---|
[프로그래머스 C++] Greedy 체육복 (0) | 2020.03.23 |
[백준 알고리즘] 1874번 스택 수열 (0) | 2020.03.20 |
[백준 알고리즘]1003번 피보나치 함수(Runtime error 해결) (0) | 2020.03.05 |
[백준 알고리즘] 1929 소수구하기 C++ (시간초과 해결) (0) | 2020.03.01 |