본문 바로가기
반응형

C++162

[백준/BOJ] 15947번 - 아기 석환 뚜루루 뚜루 (C++) 문제 링크 코딩하기 전 생각하기 /* 반복되는 패턴을 벡터로 저장하자. n을 14로 나눈 나머지를 idx 변수에 저장한다. 벡터[idx]를 출력한다. 이때 값이 tururu나 turu이면, n을 14로 나눈 몫 만큼 ru를 더 출력한다. */ 코드 #include #include using namespace std; int main() { int n; cin >> n; vector v = { "baby", "sukhwan", "tururu", "turu", "very", "cute", "tururu", "turu", "in", "bed", "tururu", "turu", "baby", "sukhwan" }; int idx = (n - 1) % 14; string result = v[idx]; if ( r.. 2021. 7. 10.
[백준/BOJ] 17210번 - 문문문 (C++) 문제 링크 코딩하기 전 생각하기 /* 첫번째 문을 여는 방법을 저장하고 0과 1을 번갈아가며 다음을 확인한다. 2의 배수의 문들의 숫자가 2번째 문의 숫자와 같은지 판별한다. 3의 배수의 문들의 숫자가 3번째 문의 숫자와 같은지 판별한다. 같지 않으면 "Love is open door"를 출력하고 프로그램을 종료한다. 숫자를 두 번째부터 번갈아 출력한다. */ 코드 #include #include using namespace std; int main() { int n; bool first, curr; cin >> n >> first; for ( int i = 1; i < n; i++ ) { if ( i % 2 == 0 ) curr = first; else curr = !(first); if ( i % 3.. 2021. 7. 7.
[백준/BOJ] 5598번 - 카이사르 암호 (C++) 문제 링크 코딩하기 전 생각하기 /* 각 문자에서 3을 빼서 출력한다. 'A' 밑으로 가면 26을 더해서 출력한다. */ 코드 #include #include using namespace std; int main() { string s; cin >> s; for ( char c : s ) { char x = c - 3; if ( x < 'A' ) x += 26; cout 2021. 7. 7.
[백준/BOJ] 11721번 - 열 개씩 끊어 출력하기 (C++) 문제 링크 코딩하기 전 생각하기 /* 반복문을 이용해서 10개의 문자를 출력하면 줄바꿈을 한다. */ 코드 #include #include using namespace std; int main() { string s; cin >> s; for ( int i = 0; i < s.length(); i++ ) { cout 2021. 7. 7.
[백준/BOJ] 6321번 - IBM 빼기 1 (C++) 문제 링크 코딩하기 전 생각하기 /* 문자열을 입력받는다. 각 문자에 1을 더해서 다음 순서의 알파벳으로 이루어진 새로운 문자열을 생성한다. 반복문을 활용하여 출력 형식에 맞게 답을 출력한다. */ 코드 #include #include using namespace std; int main() { int n; cin >> n; for ( int i = 0; i < n; i++ ) { cout 2021. 7. 7.
[백준/BOJ] 1157번 - 단어 공부 (C++) 문제 링크 코딩하기 전 생각하기 /* 문자열을 순회하면서 알파벳 개수를 벡터에 count하자. count 벡터의 최대값을 알아내자. 최대값이 0이거나, 알파벳의 사용 수가 최대값과 같은 경우가 2번 이상이면 물음표를 출력한다. 그렇지 않으면, 가장 많이 사용된 알파벳을 대문자로 출력한다. */ 코드 #include #include using namespace std; int main() { string str; cin >> str; vector count(26, 0); for ( char c : str ) { int index; if ( c >= 'a' ) index = c - 'a'; else index = c - 'A'; count[index]++; } int max = *max_element(cou.. 2021. 7. 6.
[백준/BOJ] 5622번 - 다이얼 (C++) 문제 링크 코딩하기 전 생각하기 /* 다이얼의 숫자와 해당 알파벳을 map에 저장한다. 문자열을 입력받고 문자열을 순회한다. 알파벳이이 map에 있으면 해당 숫자를 count에 더한다. 숫자 1을 걸려면 총 2초가 소요되므로 더하는 숫자는 해당 숫자 + 1 이다. */ 코드 #include #include using namespace std; int main() { map m; m.insert(make_pair("ABC", 2)); m.insert(make_pair("DEF", 3)); m.insert(make_pair("GHI", 4)); m.insert(make_pair("JKL", 5)); m.insert(make_pair("MNO", 6)); m.insert(make_pair("PQRS", 7)).. 2021. 7. 6.
[백준/BOJ] 8958번 - OX퀴즈 (C++) 문제 링크 코딩하기 전 생각하기 /* 문제를 맞았을 때 더해지는 숫자 변수를 x라고 하자. 반복문을 통해 문자열을 순회한다. 'O'가 등장하면 점수에 x를 더하고 x에 1을 더한다. 'X'가 등장하면 x를 1로 설정한다. 점수를 출력한다. */ 코드 #include #include using namespace std; int main() { int n; cin >> n; for ( int i = 0; i > s; for ( int j = 0; j < s.length(); j++ ) { if ( s[j] == 'O' ) { score += x; x++; } else x = 1; } cout 2021. 7. 6.
[백준/BOJ] 1159번 - 농구 경기 (C++) 문제 링크 코딩하기 전 생각하기 /* 길이가 26인 count배열을 선언하고 0으로 초기화 하자. 선수 수를 입력받는다. 선수 수 만큼 반복을 하며 선수 이름을 입력받는다. 선수 이름의 맨 앞글자 알파벳을 count한다. 예를 들어 선수 이름의 맨 앞글자가 'a'이면 count[0]에 1을 더한다. 반복문을 통해 count배열을 순회한다. count가 5이상이면 해당 알파벳을 출력한다. count가 5이상인 경우가 한번도 없으면 "PREDAJA"를 출력한다. */ 코드 #include #include using namespace std; int main() { int n; cin >> n; int count[26] = {0, }; for ( int i = 0; i < n; i++ ) { string pl.. 2021. 7. 6.
[백준/BOJ] 2799번 - 블라인드 (C++) 문제 링크 코딩하기 전 생각하기 /* M과 N을 입력 받는다. 그림을 이중 배열로 입력 받아보자. 이중 반복문을 통해 창문 하나하나를 판별해보자. 5M+1, 5N+4 위치의 문자가 *이면 5번째 창문이다. 위의 경우가 아니고, 5M+1, 5N+3 위치의 문자가 *이면 4번째 창문이다. 위의 경우가 아니고, 5M+1, 5N+2 위치의 문자가 *이면 3번째 창문이다. 위의 경우가 아니고, 5M+1, 5N+1 위치의 문자가 *이면 2번째 창문이다. 위의 경우가 모두 아니면 1번째 창문이다. 각각의 창문을 count한다. 5개 창문 count를 각각 출력한다. */ 코드 #include #include using namespace std; int main() { int m, n; cin >> m >> n; ch.. 2021. 7. 6.
반응형