
#include <stdio.h>
int main() {
int T, C;
int quarters, dimes, nickels, pennies;
scanf("%d", &T);
for (int i = 0; i < T; i++) {
scanf("%d", &C);
quarters = C / 25;
C = C % 25;
dimes = C / 10;
C = C % 10;
nickels = C / 5;
C = C % 5;
pennies = C;
printf("%d %d %d %d\n", quarters, dimes, nickels, pennies);
}
return 0;
}
코드 설명
첫째 줄에 테스트 케이스의 수 T를 입력받음
각 테스트 케이스마다 거스름돈 C를 입력받음
쿼터(25센트), 다임(10센트), 니켈(5센트)의 개수를 계산하고 남은 금액을 업데이트
마지막으로 남은 센트는 페니(1센트)의 개수가 됨
계산된 각 동전의 개수를 출력

#include <stdio.h>
#include <string.h>
int main() {
int T;
scanf("%d", &T);
int totalAsciiSum = 0;
for (int i = 65; i <= 90; i++) {
totalAsciiSum += i;
}
while (T--) {
char S[1001];
scanf("%s", S);
int appearedAsciiSum = 0;
int seen[26] = {0};
for (int i = 0; i < strlen(S); i++) {
int index = S[i] - 'A';
if (!seen[index]) {
appearedAsciiSum += S[i];
seen[index] = 1;
}
}
int result = totalAsciiSum - appearedAsciiSum;
printf("%d\n", result);
}
return 0;
}
코드 설명
totalAsciiSum 변수는 알파벳 대문자(AZ) 전체의 아스키 코드 값의 합을 계산
AZ의 아스키 코드 값은 65부터 90까지임
입력된 문자열 S에서 각 문자가 등장했는지 여부를 seen 배열로 확인
배열의 크기는 알파벳개수 26개 각 인덱스는 각 알파벳에 해당
등장한 문자의 아스키 코드 값의 합을 appearedAsciiSum에 저장
총 아스키 코드 값에서 등장한 알파벳의 아스키 코드 값의 합을 빼면 등장하지 않은 알파벳의 아스키 코드 값의 합이 나옴
입력 데이터 수 T를 받아 반복문을 통해 각 테스트 케이스에 대한 결과를 출력