Submission

Status:

[PPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: chs_14

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

Language: cpp

Time: 0.004 second

Submitted On: 2025-12-12 11:28:14

#include <bits/stdc++.h>
using namespace std;

int main() {
    cin.tie(0)->sync_with_stdio(0);
    string str;
    cin >> str;
    int n = str.size(), sum=0;

    vector<int> creditNum(n);
    for (int i = 0; i < n; i++)
    {
        creditNum[i]=str[i]-'0';
    }

    // 1
    creditNum.pop_back();

    //2
    reverse(creditNum.begin(), creditNum.end());

    //3
    for (int i = 0; i < n-1; i++)
    {
        if (i%2==0) {
            creditNum[i]*=2;
        }
    }

    //4
    for (int i = 0; i < n-1; i++)
    {
        if(creditNum[i]/10>0) {
            sum+=creditNum[i]%10 + 1;
        }
        else {
            sum+=creditNum[i];
        }
    }

    //5
    if (str[n-1]-'0'==(10-(sum%10))%10) {
        cout << "yes";
    }
    else {
        cout << "no";
    }

    return 0;
}