Submission

Status:

[PPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: Nitro_Legacy

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

Language: cpp

Time: 0.004 second

Submitted On: 2026-09-26 20:05:41


#include <algorithm>
#include <iostream>
#include <string>

auto main() -> int {
  std::string s;
  std::cin >> s;
  int last = s.back() - '0';
  s.pop_back();
  std::reverse(s.begin(), s.end());

  int sum = 0;
  for (auto it = s.begin(); it < s.end(); it += 2) {
    int i = *it - '0';
    i *= 2;
    if (i > 9) i = 1 + i % 10;
    sum += i;
  }
  for (auto it = s.begin() + 1; it < s.end(); it += 2) {
    int i = *it - '0';
    sum += i;
  }

  auto out = "yes";
  if (last != (10 - (sum % 10)) % 10)
      out = "no";
  std::cout << out << std::endl;
}