본문 바로가기
반응형

백준134

[백준/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] 1316번 - 그룹 단어 체커 (파이썬) 문제 링크 코딩하기 전 생각하기 ''' 등장한 적이 있는 알파벳을 리스트에 담을 것이다. 문자열을 입력받고 순회한다. 연속되지 않은 알파벳이 나왔을 때, 알파벳 리스트에 해당 문자가 있으면 break 한다. 없으면 알파벳을 리스트에 담는다. 문자열을 모두 순회했으면 count에 1을 더한다. count를 출력한다. ''' 코드 n = int(input()) count = 0 for i in range(n): k = 1 s = input() li = s[0] for j in range(1, len(s)): if j > 0 and s[j-1] != s[j]: if s[j] in li: k = 0 break else: li += s[j] if k == 1: count += 1 print(count) 느낀점 비.. 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] 4659번 - 비밀번호 발음하기 (파이썬) 문제 링크 코딩하기 전 생각하기 ''' end를 입력 받을 때 까지 반복한다. 문자열에 모음이 있는지 판별한다. 연속되는 자음과 모음을 판별한다. 'e'나 'o'가 아닐 때 같은 문자가 연속으로 오는지 판별한다. 조건에 따라 acceptable인지 아닌지를 출력한다. ''' 코드 vows = "aeiou" while True: s = input() if s == "end": break v = 0 k = 1 for i in range(len(s)): if s[i] in vows: v = 1 if i > 0: if s[i] == s[i-1] and s[i] != 'e' and s[i] != 'o': k = 0 break if i > 1: if s[i] not in vows: if s[i-1] not in v.. 2021. 7. 6.
반응형