문자열에서 첫 글자부터 한 글자씩 검사를 하면서 만약 다음 문자가 자신과 같다면 넘어가고, 자신과 같지 않다면 나머지 문자열에서 자신과 같은 문자가 발견될시 그룹 문자가 아닌 것으로 판명한다. 전체 문자열을 종료없이 다 돈다면 그룹 문자로 판명한다. #include #include using namespace std; bool check(string s){ int position = 0; for(int i = 0; i > N..
알고리즘/백준(BOJ)
이 문제는 영어로 변형된 크로아티아 알파벳을 해석하여 실제 몇 글자의 크로아티아 알파벳으로 구성되어있는지 알아내는 문제이다. 예시로 크로아티아 알파벳이 영어로 변환되었을 때 여러 글자로 구성되는 케이스를 대표로 8개만 보여줬기 때문에 해당 8개에 대해서만 주어진 문자열에서 있는지 검색하고 없다면 나머지는 한 글자로 변형되었다고 해석하면 된다. croatia[8] 배열을 생성하고 여러 글자의 크로아티아 알파벳을 넣어준뒤 주어진 문자열에서 배열 안의 글자와 일치하는 문자열이 존재한다면 한 글자인 "!"로 대체해주어 숫자를 계산할 수 있다. 여기서 주의할 점은 검사 후 한 번 대체한 문자열이 뒤에 또 나타날 수 있기 때문에 한 번 대체한 뒤에는 다시 처음부터 검사를 해줘야 한다. #include using n..
누르고자 하는 번호에 적힌 문자들의 ASCII 범위로 구분하고 시간을 누적하여 더한다. 상근이의 할머니는 알파벳으로만 숫자를 외운다고 하였으니, 알파벳이 없는 1과 0은 제외를 한다. #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); string s; cin >> s; int time = 0; for(int i = 0; i = 65 && s[i] = 68 && s[i] = 71 && s[i] = 74 && s[i] = 77 && s[i] = 80 && s[i] = 84 && s[i] = 87 && s[i]
브루트포스 문제로 몸무게와 키가 모두 큰 사람이 덩치가 큰 사람이라고 정의한다. 몸무게와 키를 저장할 두 개의 vector를 구성한다. 현재 자신의 몸무게와 키 모두 큰 사람이 있다면 점수를 1 점 매겨주는 식으로 반복문을 전체 돌면 전체의 덩치 등수를 매길 수 있다. #include #include using namespace std; int main(){ int N; cin >> N; int * order = new int[N]; fill_n(order, N, 1); vector weight; vector height; for(int i = 0; i > tempW >> tempH; weight.push_back(tempW); heig..