33,027
社区成员




procedure PrintNumber(N: integer);
label cont;
var
s: string;
i, j: integer;
begin // 输出回文正整数
for i := 1 to N-1 do
begin
s := IntToStr(i);
for j := 1 to Length(s) shr 1 do
if s[j] <> s[Length(s)-j+1] then
goto cont;
WriteLn(s);
cont:
end;
end;
void p(int n){
for(int a,j,i=1;i<=n;i++){
j=1;a=i;
while(a>9){a/=10;j*=10;}
a=i;
while(1){
if(j<1){
printf("%d\n",i);break;
}
if((a/j)!=(a%10)) break;
a%=j;a/=10;j/=100;
}
}
}
n?p(n-1):1;for(int i=n,j=0;(j=j*10+i%10)-n?i/=10:printf("%d\n",n););
n?p(n-1):1;for(int i=n,j=0;i;(j=j*10+i%10)-n?i/=10:printf("%d\n",n));
void p(int n)
{
if(n)p(n-1);for(int i=n,j=0;i;(j=j*10+i%10)-n?i/=10:printf("%d\n",n));
}