반응형
https://www.acmicpc.net/problem/2866
행과 열을 뒤집어서 입력받은 뒤, 슬라이싱을 통해 시뮬레이션을 하며 cnt 값을 구했습니다.
#include <iostream>
#include <vector>
#include <set>
using namespace std;
int r, c, cnt = 0, f;
vector<string> str(1000);
char ch;
set<string> st;
string s;
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin >> r >> c;
for (int i = 0; i < r; i++)
for (int j = 0; j < c; j++) {
cin >> ch;
str[j].push_back(ch);
}
for (int i = 1; i < r; i++) {
f = 0;
st.clear();
for (int j = 0; j < c; j++) {
s = str[j].substr(i);
if (st.find(s) == st.end()) st.insert(s);
else {
f = 1;
break;
}
}
if (f) break;
cnt++;
}
cout << cnt;
}
반응형
'Algorithm' 카테고리의 다른 글
백준 15501 : 부당한 퍼즐 (0) | 2021.11.11 |
---|---|
백준 1713 : 후보 추천하기 (0) | 2021.11.11 |
백준 10546 : 배부른 마라토너 (0) | 2021.11.11 |
백준 1700 : 멀티탭 스케줄링 (0) | 2021.11.11 |
백준 9576 : 책 나눠주기 (0) | 2021.11.11 |