형 변환하기(11720)

5256 단어 pythonpython

공백없이 입력받기,,
처음에는 숫자 자릿수가 2개이상인 것은 어떻게 구분해야 하나 고민했지만 따로 생각할 필요없이
각각 다 한자릿수의 숫자만 입력된다고 여기면 되는 것이었다.

#include <iostream>
using namespace std;



int main() {
	char *arr;
	int a;
	int sum = 0;
	cin >> a;
	arr = new char[a];

	for (int i = 0; i < a; i++) {
		char num;
		cin >> num;
		arr[i] = num;
	}

	for (int i = 0; i < a; i++) {
		//cout << arr[i] <<' ';
		
		sum += arr[i]-'0';
	}

	cout << sum;
	
}

CPP의 경우에는 위처럼 동적배열을 할당하여 각 숫자를 배열에 값으로 cin을 통하여 받았다
char로 받으니 자릿수 하나를 하나의 입력으로 자동으로 인식한다.

num=int(input())
a = str(input())
a = list(a)

a = list(map(int,a))
b = [int(x) for x in a]

print(sum(a))

파이썬이 익숙치 않아 형변환이 햇갈렸는데,
한번에 공백없는 입력을 자릿수 하나하나를 리스트로 만들 수는 없고
일단 문자열로 받아 문자하나하나 당의 리스트로 만들 수 있었다.

그 다음 형변환 함수를 사용했는데,

a = list(map(int,a))
b = [int(x) for x in a]

두 방식이 둘다 같은 결과물을 만들어내어 각 문자들을 숫자들로 변환해주었다.

좋은 웹페이지 즐겨찾기