OpenFIPI 2.0
oge_10198C
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 3. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
|
Входные данные |
Выходные данные |
|
5 163 275 883 947 4115 |
3 |
Редактировать
Ответы
n=int(input()) k=0 for i in range(n): a=int(input()) b=hex(a)[2:] if len(b)==3 and b[-1]=="3": k+=1 print(k)
#include <iostream> using namespace std; int ps = -1; bool prov(int n, int kol) { if (n == 0) { if (kol == 3) { return true; } return false; } if (ps == -1) { ps = n % 16; } prov(n /= 16, kol + 1); } int main() { int n, kol = 0, a; cin >> n >> a; for (int i = 1; i < n; i++) { if (prov(a, 0) == 1 && ps == 3) kol++; ps = -1; cin >> a; } cout << kol; }