# 생각
a to z 알파벳 각 문자의 개수를 저장하는 배열을 선언하여 해결 가능하다
첫 번째 입력받는 문자열의 각 문자 개수는 더해주고
두 번째 입력받는 문자열의 각 문자 개수는 빼주게되면
0이면 조합이 가능한 문자열이고, 0이 아니면 조합이 불가능한 문자열임을 알 수 있다
# 전체 코드
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
int TC;
cin >> TC;
while (TC--)
{
string s1, s2;
cin >> s1 >> s2;
int a[26] = {};
for (auto c : s1)
{
a[c - 'a']++;
}
for (auto c : s2)
{
a[c - 'a']--;
}
bool bPossible = true;
for (auto i : a)
{
if (i != 0)
{
bPossible = false;
}
}
if (bPossible == true)
{
cout << "Possible\n";
}
else
{
cout << "Impossible\n";
}
}
}
https://www.acmicpc.net/problem/11328
11328번: Strfry
C 언어 프로그래밍에서 문자열(string)은 native한 자료형이 아니다. 사실, 문자열은 그저, 문자열의 끝을 표시하기 위한 말단의 NULL이 사용된, 문자들로 이루어진 문자열일 뿐이다. 하지만 프로그래
www.acmicpc.net
'Algorithm > BOJ' 카테고리의 다른 글
[BOJ] 10814_나이순 정렬 with cpp (0) | 2022.02.18 |
---|---|
[BOJ] 15683_감시 with cpp (0) | 2022.02.17 |
[BOJ] 3273_두 수의 합 with cpp (0) | 2022.02.17 |
[BOJ] 10808_알파벳 개수 with cpp (0) | 2022.02.16 |
[BOJ] 1799_비숍 with cpp (0) | 2022.02.15 |