문제https://www.acmicpc.net/problem/5622풀이숫자 1을 걸라면 총 2초가 필요하다. 1보다 큰 숫자를 걸라면 1초씩 더 늘어나기 때문에 시작은 3초부터. 알파벳 별로 (ABC는 3초 , DEF는 4초) 시간을 배열에 저장 후 (문자 - 'A')로 인덱스 접근하여 ans에 시간을 더해주면 정답.코드#include using namespace std;int main() { int time[26] = { 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 10, 10, 10, 10 }; int ans = 0; string str; cin >> str; for(int i = 0; i
구현
문제https://www.acmicpc.net/problem/2908풀이A,B를 getline으로 입력받고 (문자열) 공백으로 A B를 나누어준다음 reverse를 사용해 뒤집어준다. 그리고 형변환으로 int형으로 변환해준다음 비교해서 큰 수를 출력한다.[ 다 풀고 다른 풀이를 확인해보니 A B를 문자열로 입력받는것까지는 같지만 본인보다더 쉽게 풀이한 코드가 있어 추가적으로 첨부해봄 / String은 index 접근이 가능해서 그냥 역으로 돌리고 저장하면 끝... ] 코드#include #include #include using namespace std;int main() { string a,b; string num; getline(cin,num); stringstream nu..
문제- https://www.acmicpc.net/problem/1251풀이부루트포스 알고리즘을 이용하여 세 단어로 쪼갤 수 있는 모든 경우의 수를 실행하고나눠진 단어를 뒤집어 주어 list에 저장한다 그리고 sorted()를 사용해 사전순으로 정렬해주고 출력해준다.코드string = input()answer = []for i in range(1,len(string)): #for문으로 세 단어로 나눈다 for j in range(i+1,len(string)): front = string[:i][::-1] #[::-1] : 문자열 거꾸로 뒤집기 mid = string[i:j][::-1] end = string[j:][::-1] answer.ap..
문제- https://www.acmicpc.net/problem/4458풀이간단하게 입력 문자열이 들어오면 문자열 첫번째 문자가 대문자인지 확인후 아니라면 대문자로 소문자에서 대문자로 변환해주고 출력시켜주면 되는 문제다. 헤더 파일 ctype.h의 isupper() ,islower() 함수를 사용하여 쉽게 대소문자 판별이 가능하다. 원래 헤더 파일 string.h에 strupr()와 strlwr() 함수로 쉽게 대소문자 변환이 가능했지만 더이상 사용할 수 없다. https://learn.microsoft.com/ko-kr/cpp/c-runtime-library/reference/strupr-wcsupr?view=msvc-170 strupr, wcsupr자세한 정보: strupr, wcsuprlearn.m..
문제https://www.acmicpc.net/problem/2566풀이해당 문제를 풀기 위해서는 2차원 배열을 사용하여야한다.코드#include int main(void) { int num, x, y; // x : 행 , y : 열 int max = -1; // max값은 0일 가능성도 있으니 -1로 초기화 int i, j; for (i = 1; i