Submission

Status:

[PPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: opjns

Problemset: ตรวจบัตรเครดิต

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-13 09:55:33

#include <iostream>
using namespace std;

int main() {
    long long cardNum;
    cin >> cardNum;

    int digits[16];
    for (int i = 15; i >= 0; i--) {
        digits[i] = cardNum % 10;
        cardNum /= 10;
    }

    int check = digits[15]; 
    int sum = 0;
    int idx = 0;
    for (int i = 14; i >= 0; i--) {
        int val = digits[i];
        if (idx % 2 == 0) {
            val *= 2;
            if (val > 9) val -= 9; 
        }
        sum += val;
        idx++;
    }

    int lastdigit = (10 - (sum % 10)) % 10;

    if (lastdigit == check) {
        cout << "yes\n";
    } else {
        cout << "no\n";
    }

    return 0;
}