YTU 2887: D--机器人Bill
来源:互联网 发布:json字符串base64加密 编辑:程序博客网 时间:2024/05/22 17:45
Description
最近,Dr. Jiang 新设计一个机器人Bill。Bill很聪明,会做许多事情。唯独对质数的理解与人类不一样,它是从右往左读数。比如,它看到113时,会理解成311。让它比较23与19哪一个大,它说19大。原因是它的大脑会以为是32与91在进行比较。再比如,让它比较29与31,它说29大。
给Bill 两个自然数A和B,让它将 [A,B] 区间中的所有质数按从小到大排序出来。你会认为它如何排序?
Input
第一行:N 表示有多少组测试数据。 (2<=N<=5 )
接下来有 N 行,每一行有两个正整数 A,B 表示待排序元素的区间端点。(1<=A<=B<=200000, B-A<=100)
Output
对于每一行测试数据,输出一行,为所有排好序的元素,元素之间有一个空格。
Sample Input
28 1518 39
Sample Output
11 1331 23 37 19 29
HINT
Source
LDF
ac代码:#include <iostream>#include <cstring>using namespace std;int fun1(int a,int b){ int i=0,j=0,a1,b2; a1=a;b2=b; if(a==b)return 1; while(a1){ a1/=10; i++; } while(b2){ b2/=10; j++; } if(i>j) return 1; if(i<j) return 0; while(a){ if(a%10==b%10){ a/=10; b/=10; } else if(a%10>b%10){return 1;} else return 0; } return 0;}int p(int a){ if(a<=1&&a>0)return 0; int i=2; while(i<a){ if(a%i++==0) return 0; } return 1;}int fun(int a,int b){ int i=a,count=0,t,j,k; int my[100]; for(i=a;i<=b;i++){ if(p(i)==1) my[count++]=i; } t=count; for(i=0;i<t;i++){ for(j=0;j<t-1-i;j++){ if(fun1(my[j],my[j+1])){ k=my[j]; my[j]=my[j+1]; my[j+1]=k; } } } i=0; while(i<count-1)cout<<my[i++]<<' '; cout<<my[i]<<'\12';}int main(){ int n; cin>>n; int a,b; while(n){ cin>>a>>b; fun(a,b); n--; } return 0;}
运行结果:
0 0
- YTU 2887: D--机器人Bill
- YTU 2887: D--机器人Bill
- YTU---2887-机器人Bill
- bill
- bill
- What I'd Say to Bill Gates -- Diomidis D. Spinellis VS. Bill.Gates
- 3D仿真机器人
- 机器人D-H模型
- YTU 2899: D-险恶逃生 I dp
- YTU 2899: D-险恶逃生 I
- YTU-OJ-Problem D: A代码完善--系统日期
- 有感:未来机器人与3D融合
- MobBob 3D打印机器人 制作
- Bill Say
- Bill Joy
- Bill Gates
- Bill Gate
- bill gates
- 轮廓处理之一
- 线程中sleep()方法和yeild()方法的区别
- Oracle创建用户、表空间、导入导出、...命令
- 记修改论文的感受
- 【连载】 .Net cad二次开发(二)
- YTU 2887: D--机器人Bill
- poj 1094 Sorting It All Out 【拓扑排序】
- 设置git用户名和邮箱
- C++ sizeof各种类型的大小
- SQLServer锁的概述
- C++面试题
- Centos6.5 上Ansible 对Windows 管控
- 数据中心模块化和标准化(5-1)
- Oracle建立表空间和用户