Submission
Status:
[PPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: KurtCobain
Problemset: ตรวจบัตรเครดิต
Language: cpp
Time: 0.003 second
Submitted On: 2025-10-03 14:22:57
#include <iostream>
#include <string>
using namespace std;
int main(){
string c;
int id_card[16] = {-1};
string to_plus = "";
cin >> c;
// Flip
for (int i=0;i<16;i++){
int d = c[i] - '0';
id_card[15-i] = d;
}
int checksum = id_card[0];
id_card[0] = 0;
for (int j=1;j<16;j+=2){
id_card[j]*=2;
}
for (int h : id_card){
to_plus+=to_string(h);
}
long long answer = 0;
for (char u : to_plus){
int k = u - '0';
answer += k;
}
long long to_check = (10 - (answer % 10)) % 10;
if (checksum == to_check){
cout << "yes\n";
}
else{
cout << "no\n";
}
}