https://programmers.co.kr/learn/courses/30/lessons/17677
코딩테스트 연습 - [1차] 뉴스 클러스터링
뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브
programmers.co.kr
- 교집합 카운팅 후 삭제히여 교집합+남은갯수=합집합 확인하기
#include <string>
#include <iostream>
#include <vector>
#include <algorithm>
#include <map>
using namespace std;
int solution(string str1, string str2) {
int answer = 0;
vector<string>vec1;
vector<string>vec2;
int a = -1;
while (1) {
a++;
if (a == str1.size() - 1) break;
string tmp1 = str1.substr(a, 2);
if (tmp1[0] >= 'a' && tmp1[0] <= 'z')
tmp1[0] += 'A' - 'a';
if (tmp1[1] >= 'a' && tmp1[1] <= 'z')
tmp1[1] += 'A' - 'a';
if (tmp1[0] < 'A' || tmp1[1] < 'A' || tmp1[0]>'Z' || tmp1[1]>'Z' || tmp1[0] == ' ' || tmp1[1] == ' ')
continue;
vec1.push_back(tmp1);
}
a = -1;
while (1) {
a++;
if (a == str2.size() - 1) break;
string tmp2 = str2.substr(a, 2);
if (tmp2[0] >= 'a' && tmp2[0] <= 'z')
tmp2[0] += 'A' - 'a';
if (tmp2[1] >= 'a' && tmp2[1] <= 'z')
tmp2[1] += 'A' - 'a';
if (tmp2[0] < 'A' || tmp2[1] < 'A' || tmp2[0]>'Z' || tmp2[1]>'Z' || tmp2[0] == ' ' || tmp2[1] == ' ')
continue;
vec2.push_back(tmp2);
}
if (vec1.empty() && vec2.empty())
return answer = 65536;
int A = 0, B = 0;
for (int i = 0; i < vec1.size(); i++) {
for (int j = 0; j < vec2.size(); j++) {
if (vec1[i] == vec2[j]) {
A++;
vec1.erase(vec1.begin() + i);
vec2.erase(vec2.begin() + j);
i--;
break;
}
}
}
B = vec1.size() + vec2.size() + A;
float tmp = float(A) / float(B);
answer = tmp * 65536;
return answer;
}
int main() {
cout << solution("aa1 + aa2", "AA12") << endl;// 32768
cout << solution("FRANCE", "french") << endl;// 16384
cout << solution("handshake", "shake hands") << endl;// 65536
cout << solution("aa1 + aa2", "AAAA12") << endl;// 43690
cout << solution("E = M * C ^ 2", "e = m * c ^ 2");// 65536
return 0;
}
'APS > 프로그래머스' 카테고리의 다른 글
[2018 KAKAO BLIND RECRUITMENT] [1차] 셔틀버스 C++ (0) | 2021.12.17 |
---|---|
[그래프] 순위 C++ (0) | 2021.12.17 |
[2017 카카오코드 본선]리틀 프렌즈 사천성 C++ (0) | 2021.12.09 |
[위클리 챌린지]전력망을 둘로 나누기 C++ (0) | 2021.12.09 |
[모든문제 LV2] 방금그곡 (0) | 2021.11.23 |