2016 东莞信息特长生考试 1 子数整数

2016东莞市特长生考试 子数整数

Time Limit:10000MS Memory Limit:256000K
Total Submit:4 Accepted:3
Case Time Limit:1000MS

Description

对于一个五位数 a1a2a3a4a5,可将其拆分为三个子数: sub1=a1a2a3

sub2=a2a3a4

sub3=a3a4a5

例如,五位数 20207 可以拆分成 sub1=202

sub2=020(=20) sub3=207

现在给定一个正整数 K,要求你编程求出 10000(包括 10000)到 30000(包括 30000)之间所有满足下述条件的五位数,条件是这些五位数的三个子数 sub1,sub2,sub3 都可被 K 整除。

Input

从文件 num.in 输入,输入仅一行,为正整数 K(0

Output

输出到文件 num.out,输出文件的每一行为一个满足条件的五位数,要求从小到大输出。不得重复输出或遗漏。如果无解,则输出“-1”。

Sample Input

15
Sample Output

22555

25555

28555

30000
做法:利用 mod 和 div 取sub即可
代码如下:

var
  k,i:longint;
  b:boolean;
begin
  assign(input,'num.in');reset(input);
  assign(output,'num.out');rewrite(output);
  readln(k);
  for i:=10000 to 30000 do
    begin
      if (i div 100) mod k=0 then
        if ((i div 10) mod 1000) mod k=0 then
          if (i mod 1000) mod k=0 then begin writeln(i); b:=true; end;
    end;
  if not b then writeln(-1);
  close(input); close(output);
end.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值