#include <iostream>
using namespace std;
char DAT[256] = { 0 };
int main()
{
char cardList[15];
cin >> cardList;
for (int i =0; cardList[i] != '\0'; ++i)
{
DAT[cardList[i]]++;
}
int cnt = 0;
for (const char& d : DAT)
{
if (0 < d) cnt++;
}
cout << cnt;
return 0;
}
int main()
{
// 1. Input
int rec[3][4] = {
{65000,35,42,70},
{70,35,65000,1300},
{65000,30000,38,42}
};
char dat[65536] = { 0 };
// 2. Solve
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 4; ++j)
{
++(dat[rec[i][j]]);
}
}
int max = -1;
int maxIdx = -1;
for (int i = 0; i < sizeof(dat); ++i)
{
if (max < dat[i])
{
max = dat[i];
maxIdx = i;
}
}
// 3. Print
cout << maxIdx;
return 0;
}
int main()
{
// 1. Input
int arr[3][3] = { 0 };
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
cin >> arr[i][j];
}
}
char flag[10] = { 0 };
// 2. Solve
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
flag[arr[i][j]] = 1;
}
}
// 3. Print
for (int i = 1; i < 10; ++i)
{
if (flag[i] == 0)
{
cout << i;
}
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
// 1. Input
char c[8] = { 0 };
for (auto& d : c)
{
cin >> d;
}
char dat['z'] = { 0 };
// 2. Solve
for (auto& d : c)
{
++(dat[d]);
}
char max = -1;
char maxIdx = -1;
for (int i = 0; i < sizeof(dat); ++i)
{
if (max < dat[i])
{
max = dat[i];
maxIdx = i;
}
}
// 3. Print
cout << maxIdx;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
// 1. Input
char town[3][3] = { 'C','D','A','B','M','Z','Q','P','O'};
char dat['Z' - 65 + 1] = { 0 };
for (int i = 0; i < 4; ++i)
{
char c; cin >> c;
++(dat[c - 65]);
}
// 2. Solve
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 3; ++j)
{
++(dat[town[i][j] - 65]);
}
}
int ret = 0;
for (auto& d : dat)
{
if (2 <= d)
{
++ret;
}
}
// 3. Print
cout << ret;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
// 1. Input
char arr[3][5] = { 'A','B','C','A','G','H','H','I','J','K','A','B','A','B','C' };
char dat[256] = { 0 };
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 5; ++j)
{
++(dat[arr[i][j]]);
}
}
// 2. Solve & Print
for (int i = 0; i < sizeof(dat); ++i)
{
int max = dat[i];
for (int j = 0; j < max; ++j)
{
cout << (char)i;
}
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
// 1. Input
int train[8] = { 3,7,6,4,2,9,1,7 };
int team[3] = { 0 };
int size = 3;
for (auto& d : team)
{
cin >> d;
}
// 2. Solve & Print
for (int i = 0; i <= train - team; ++i)
{
int cnt = 0;
for (int j = 0; j < size; ++j)
{
if (train[i + j] == team[j])
{
++cnt;
}
}
if (cnt == 3)
{
cout << i << "번 ~ " << i + size - 1 << "번 칸";
return 0;
}
}
return -1;
}
#include <iostream>
using namespace std;
int apt[5][3] = { 15,2,6,7,8,9,10,1,3,4,6,9,15,18,17 };
int maxFloor = 5;
int family[3] = { 0 };
int maxFam = 3;
bool isPattern(int* a, int* b, const int& size)
{
for (int i = 0; i < size; ++i)
{
if (a[i] != b[i])
{
return false;
}
}
return true;
}
int main()
{
// 1. Input
for (auto& d : family)
{
cin >> d;
}
// 2. Solve
for (int i = 0; i < maxFloor; ++i)
{
if (isPattern(apt[i], family, maxFam) == true)
{
cout << i + 1 << "층";
return 0;
};
}
return -1;
}
int main()
{
// 1. Input
int arr[3][5] = { 1,3,3,5,1,3,6,2,4,2,1,9,2,6,5 };
int n = 0;
cin >> n;
char dat[10] = { 0 };
// 2. Solve & Print
for (int i = 0; i < 3; ++i)
{
for (int j = 0; j < 5; ++j)
{
++(dat[arr[i][j]]);
}
}
for (int i = 0; i < 10; ++i)
{
if (n == dat[i])
{
cout << i << " ";
}
}
return 0;
}
#include <iostream>
using namespace std;
void StrCpy(char* to, const char* from)
{
int i = 0;
for (i = 0; from[i] != '\0'; ++i)
{
to[i] = from[i];
}
to[i] = '\0';
return;
}
class Person
{
public:
Person() = default;
Person(const Person&) = default;
~Person() = default;
const char* GetName()const
{
return m_name;
}
const char* GetAddress()const
{
return m_add;
}
const char* GetTel()const
{
return m_tel;
}
const int GetId()const
{
return m_id;
}
const int GetMileage()const
{
return m_mile;
}
void SetName(const char* name)
{
StrCpy(m_name, name);
}
void SetAdd(const char* add)
{
StrCpy(m_add, add);
}
void SetTel(const char* tel)
{
StrCpy(m_tel, tel);
}
void SetId(const int id)
{
m_id = id;
}
void SetMile(const int mile)
{
m_mile = mile;
}
private:
char m_name[100] = { 0 };
char m_add[100] = { 0 };
char m_tel[100] = { 0 };
int m_id = 0;
int m_mile = 0;
};
int main()
{
// 1. Input
Person p;
char buf[100] = { 0 };
int temp = 0;
cout << "이름을 입력하세요 :";
cin >> buf;
p.SetName(buf);
cout << "주소를 입력하세요 :";
cin >> buf;
p.SetAdd(buf);
cout << "연락처를 입력하세요 :";
cin >> buf;
p.SetTel(buf);
cout << "ID를 입력하세요 :";
cin >> temp;
p.SetId(temp);
cout << "마일리지를 입력하세요 :";
cin >> temp;
p.SetMile(temp);
// 2. Output
cout << "-----고객 정보-----" << endl;
cout << "이름: " << p.GetName() << endl;
cout << "주소: " << p.GetAddress() << endl;
cout << "연락처: " << p.GetTel() << endl;
cout << "고객ID: " << p.GetId() << endl;
cout << "마일리지: " << p.GetMileage() << endl;
return 0;
}
'코딩 테스트 > 알고리즘 풀이' 카테고리의 다른 글
[LV1] 복습 문제 (0) | 2025.04.13 |
---|---|
[LV1] 연습 문제 (0) | 2025.04.12 |
[알고스팟 - TRIANGLEPATH] 삼각형 위의 최대 경로 (0) | 2023.01.08 |
[알고스팟 - QUADTREE] 쿼드 트리 뒤집기 (0) | 2022.12.10 |
[백준 - 1620] 나는야 포켓몬 마스터 이다솜 (0) | 2022.12.09 |