Напишите в ответе количество различных значений входной переменной
a из интервала от 1000 до 2000 (включая границы), при которых программа выдаёт тот же ответ, что и при входном значении
a = 1111. Значение
a = 1111 также включается в подсчёт различных значений
a
Паскаль |
Си |
Python |
var a, i, k: integer;
function f(x: integer): integer;
var m: integer;
begin
if x < 10 then f := x
else begin
m := f(x div 10);
if m < x mod 10 then
f := x mod 10
else
f := m;
end;
end;
begin
k := 0;
readln(a);
for i := 1000 to a do
if f(i mod 100) = 1 then
if f(i div 100) = f(i mod 100) then
k := k + 1;
writeln(k);
end.
|
#include<stdio.h>
int f(int x)
{ int m;
if (x < 10) return x;
else {
m = f(x /10);
if (m < x % 10)
return x % 10;
else
return m;
}
}
int main(void)
{ int i, k,a;
k = 0;
scanf(″%d″,&a);
for (i=1000; i<= a; i++)
if (f(i % 100) == 1)
if (f(i /100) == f(i % 100))
k = k + 1;
printf(″%d″,k);
}
|
def f(x):
if x < 10:
return x
else:
m = f(x // 10)
if m < x % 10:
return x % 10
else:
return m
k = 0
a = int(input())
for i in range (1000, a+1):
if f(i % 100) == 1:
if f(i // 100) == f (i % 100):
k += 1
print (k) |