코딩공부/프로그래머스

[프로그래머스]Lv1 숫자 짝꿍C++ (char 숫자 int로 변경)

usingsystem 2023. 9. 8. 09:05
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/131128?language=cpp 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

소스코드

int temp = X[i] - '0'; Char값을 그대로 int형으로 변경가능

#include <string>
#include <vector>

using namespace std;

string solution(string X, string Y) {
string answer = "";

	int xArray[10] = {0};
	int yArray[10]= { 0 };

	for (int i = 0; i < X.size(); i++)
	{
		string temp;
		temp.push_back(X[i]);
		xArray[stoi(temp)]++;
	}
	for (int i = 0; i < Y.size(); i++)
	{
		string temp;
		temp.push_back(Y[i]);
		yArray[stoi(temp)]++;
	}

	for (int i = 9; i >= 0; i--)
	{
		if (xArray[i] == 0 || yArray[i] == 0)
			continue;

		int imin = min(xArray[i], yArray[i]);

		for (int j = 0; j < imin; j++)
		{
			answer += to_string(i);
		}
	}

	if (answer.size() == 0)
		return "-1";
	else if (answer[0] == '0')
		return "0";

	return answer;
}
728x90