알고리즘/c++ 프로그래머스
[프로그래머스] 영어 끝말잇기 c++
말린밴댕이_공부
2023. 5. 6. 16:56
반응형
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/12981
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드 및 풀이
보통 간단하게 생각을 하고 효율성이 맞지 않는다면 고치는 편인데
전꺼의 끝과 현재의 시작이 같지 않다면 return
그리고 여태 한것의 문장이 있다면 return을 하는 형식으로 생각하고 짰더니 바로 통과하였습니다.
/*
영어 끝말잇기
그냥 전꺼 끝 단어랑 처음 시작 단어를 비교해서 다르다면 리턴
그리고 vector<string> words에 있는 것을 돌며 서로 같지 않으면 리턴
*/
#include <string>
#include <vector>
#include <iostream>
using namespace std;
vector<int> solution(int n, vector<string> words) {
vector<int> answer;
int turn = 0;
for(int i = 1; i < words.size() ;i++){
if(words[i][0] != words[i - 1].back()){
answer.push_back(i % n + 1);
answer.push_back((i / n) + 1);
return answer;
}
for(int j = 0; j < i;j++){
if(words[i] == words[j]){
answer.push_back(i % n + 1);
answer.push_back((i / n) + 1);
return answer;
}
}
}
answer.push_back(0);
answer.push_back(0);
return answer;
}
반응형