본문 바로가기
알고리즘/백준 문제 풀이

[BOJ/백준] 5622번 다이얼 - [c/c++] 풀이

by 미니상미니 2022. 10. 19.
반응형

https://www.acmicpc.net/problem/5622

 

5622번: 다이얼

첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다.

www.acmicpc.net

 

 

 

 


  • 문제

단계별로 풀어보기 - 문자열 - [8단계] 5622번

해설

각 알파벳 별로 시간을 time 배열에 저장한다.

문자열을 돌면서 (문자 - 'A')로 인덱스에 접근하여 ans에 시간을 더한 후 출력한다.

 

코드

c

#include <stdio.h>
#include <string.h>

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 };

	char s[16];
	int ans = 0;

	scanf("%s", s);

	for (int i = 0; i < strlen(s); i++) {
		ans += time[s[i] - 'A'];
	}
	
	printf("%d", ans);

	return 0;
}

 

c++

#include <iostream>

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 };

	string s;
	int ans = 0;

	cin >> s;

	for (int i = 0; i < s.length(); i++) {
		ans += time[s[i] - 'A'];
	}
	
	cout << ans;
	

	return 0;
}

 

 

 

 

 

반응형

댓글