Submission
Status:
[PPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: Quaoar
Problemset: ตรวจบัตรเครดิต
Language: cpp
Time: 0.003 second
Submitted On: 2025-09-23 16:09:01
#include <iostream>
#include <string>
using namespace std;
int main(){
int nums[15] = {};
int cnt = 0;
int a = 0 , sum = 0;
string input;
cin >> input;
int r = input[15] - '0';
for (int i = 0 ; i < 15 ; i++){
nums[i] = input[14 - i] - '0';
}
for (int i = 0 ; i < 15 ; i++){
if (i % 2 == 0){
nums[i] = nums[i] * 2;
}
}
for (int i = 0 ; i < 15 ; i++){
if (nums[i] >= 10){
cnt++;
}
}
int out[15 + cnt] = {};
for (int i = 0 ; i < 15 ; i++){
if (nums[i] >= 10){
out[i + a] = 1;
out[i + 1 + a] = nums[i] % 10;
a++;
} else {
out[i + a] = nums[i];
}
}
for (int i = 0 ; i < 15 + cnt ; i++){
sum += out[i];
}
if ((10 - (sum % 10)) % 10 == r){
cout << "yes";
} else {
cout << "no";
}
return 0;
}