코딩공부/Softeer

[Softeer/C++] [21년 재직자 대회 예선] 전광판

usingsystem 2024. 3. 9. 18:25
728x90

https://softeer.ai/practice/6268

 

Softeer - 현대자동차그룹 SW인재확보플랫폼

 

softeer.ai

소스코드

#include<iostream>
#include <vector>
#include <string>
#include <map>
#include <algorithm>

using namespace std;

int main(int argc, char** argv)
{
	map<string, vector<int>> m;
	m.insert({ "0",{1,1,1,0,1,1,1} });
	m.insert({ "1",{0,0,1,0,0,1,0} });
	m.insert({ "2",{1,0,1,1,1,0,1} });
	m.insert({ "3",{1,0,1,1,0,1,1} });
	m.insert({ "4",{0,1,1,1,0,1,0} });
	m.insert({ "5",{1,1,0,1,0,1,1} });
	m.insert({ "6",{1,1,0,1,1,1,1} });
	m.insert({ "7",{1,1,1,0,0,1,0} });
	m.insert({ "8",{1,1,1,1,1,1,1} });
	m.insert({ "9",{1,1,1,1,0,1,1} });
	m.insert({ " ",{0,0,0,0,0,0,0} });

	int t;
	string a, b;

	cin >> t;

	int count =0;
	string result;
	vector<int> va;
	vector<int> vb;
	int dif1, dif2;
	for (int i = 0; i < t; i++)
	{
		cin >> a >> b;

		dif1 = 5 - a.size();
		for (int i2 = 0; i2 < dif1; i2++)
			a.insert(0, " ");

		dif2 = 5 - b.size();
		for (int i3 = 0; i3 < dif2; i3++)
			b.insert(0, " ");

		for (int j = 0; j < 5; j++)
		{
			string keyA = a.substr(j, 1);
			string keyB = b.substr(j, 1);
			va = m[keyA]; 
			vb = m[keyB];
		
			for (int k = 0; k < 7; k++)
			{
				if (va[k] != vb[k])
					count++;
			}
		}

		result += to_string(count) + "\n";
		count = 0;
	}

	cout << result;
	return 0;
}
728x90