본문 바로가기
온라인저지

[BOJ]14726번: 신용카드 판별

by plzfday 2017. 9. 24.

14726: 신용카드 판별


숫자로 해도 되고 문자열로 해도 되는데 나는 문자열로 구성했다.

구현~


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
 
int N;
char num[10001][1001];
 
bool f(char a[])
{
    int sum = 0;
    for (int i = 15; i >= 0; i--) {
        if ((i + 1) % 2 != 0)
        {
            if ((a[i] - '0'* 2 >= 10) {
                a[i] = ((((a[i] - '0'* 2/ 10+ ((a[i] - '0'* 2) % 10+ '0';
            }
            else
                a[i] = (a[i] - '0'* 2 + '0';
        }
    }
    for (int i = 15; i >= 0; i--) {
        sum += (a[i] - '0');
    }
    if (sum % 10 == 0)
        return true;
    else
        return false;
}
 
int main()
{
    scanf("%d"&N);
    for (int i = 0; i < N; ++i)
        scanf("%s", num[i]);
    for (int i = 0; i < N; ++i) {
        if (f(num[i]))
            printf("T\n");
        else
            printf("F\n");
    }
    return 0;
}
cs


'온라인저지' 카테고리의 다른 글

[BOJ] 1002번 : 터렛  (0) 2017.11.16
[BOJ] 1260번: DFS와 BFS  (0) 2017.11.04
[BOJ] 10942번: 팰린드롬?  (0) 2017.10.21
[BOJ]2605번: 줄 세우기  (1) 2017.09.03
[BOJ]2309번: 일곱 난쟁이  (0) 2017.09.03
[BOJ]2783번: 삼각 김밥  (0) 2017.09.03

댓글