这个按自己的思路,超时,网上找到的资料,这个最简单,可是有2句很精妙:

    k=i;j=1;
        while(k>9){k/=10;j*=10;}
        if(k%2==0){i+=j;continue;}

跳过首位为0,2,4,6,8的回文数。能剪断一半,提升一倍的效率。

/*
ID: qq104801
LANG: C++
TASK: pprime
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>char x[11];
int a,b;int isprime(int n)
{    if (n%2==0)return 0;for(int i=3;i*i<=n;i+=2)if(n%i==0)return 0;    return 1;
}int modify(int x)
{int t=x;x/=10;while(x>0){t=t*10+x%10;x/=10;}return t;
}void test()
{    FILE *fin = fopen("pprime.in", "r");FILE *fout = fopen("pprime.out", "w"); fscanf(fin,"%d %d",&a,&b);if(a<=5&&5<=b)fprintf(fout,"5\n");if(a<=7&&7<=b)fprintf(fout,"7\n");if(a<=11&&11<=b)fprintf(fout,"11\n");int i=10,j,k;while(modify(i)<a)i++;while(modify(i)<=b){k=i;j=1;while(k>9){k/=10;j*=10;}if(k%2==0){i+=j;continue;}j=modify(i);if(isprime(j))fprintf(fout,"%d\n",j);i++;}   fclose(fin);fclose(fout);
}main () {    //printf("%d\n",ispalindromes(11));
    test();    //printf("%d\n",modify(32));exit (0);
}

测试结果:

USER: cn tom [qq104801]
TASK: pprime
LANG: C++Compiling...
Compile: OKExecuting...Test 1: TEST OK [0.005 secs, 3496 KB]Test 2: TEST OK [0.003 secs, 3496 KB]Test 3: TEST OK [0.008 secs, 3496 KB]Test 4: TEST OK [0.011 secs, 3496 KB]Test 5: TEST OK [0.011 secs, 3496 KB]Test 6: TEST OK [0.008 secs, 3496 KB]Test 7: TEST OK [0.024 secs, 3496 KB]Test 8: TEST OK [0.022 secs, 3496 KB]Test 9: TEST OK [0.030 secs, 3496 KB]All tests OK.Your program ('pprime') produced all correct answers! This is your submission #3 for this problem. Congratulations!Here are the test data inputs:------- test 1 ----
5 500
------- test 2 ----
750 14000
------- test 3 ----
123456 1123456
------- test 4 ----
97000 1299000
------- test 5 ----
9878210 9978210
------- test 6 ----
9902099 9902100
------- test 7 ----
7 10000000
------- test 8 ----
1333331 9743479
------- test 9 ----
5 100000000Keep up the good work!
Thanks for your submission!

转载于:https://www.cnblogs.com/dpblue/p/3950595.html

usaco-pprime-pass相关推荐

  1. pass基础架构分析

    pass基础架构分析 Relay 和 TVM IR,包含一系列优化passes,可提高模型的性能指标,如平均推理,内存占用,或特定设备的功耗.有一套标准优化,及特定机器学习的优化,包括常量折叠,死代码 ...

  2. 将编译器pass添加到Relay

    将编译器pass添加到Relay 编译器pass是扩展Relay功能集和对Relay程序执行优化的主要接口.通过编写编译器pass,可以修改AST或收集有关AST的信息,具体取决于目标.事实上,Rel ...

  3. AI中pass架构设计优化

    AI中pass架构设计优化 Relay 和 TVM IR,包含一系列优化passes,可提高模型的性能指标,例如平均推理,内存占用,或特定设备的功耗.有一套标准优化,及特定机器学习的优化,包括常量折叠 ...

  4. TVM,Relay,Pass

    TVM,Relay,Pass Relay介绍 主要结合TVM的文档(https://tvm.apache.org/docs/dev/relay_intro.html),介绍一下NNVM的第二代Rela ...

  5. Pass算子python 函数

    Pass算子python 函数 函数 • 函数是代码的一种组织形式 • 函数应该能完成一项特定的工作,而且一般一个函数只完成一项工作 • 有些语言,分函数和过程两个概念,通俗解释是,有返回结果的是函数 ...

  6. AI基础架构Pass Infrastructure

    AI基础架构Pass Infrastructure • Operation Pass o OperationPass : Op-Specific o OperationPass : Op-Agnost ...

  7. 如何使用TVM Pass Relay

    如何使用TVM Pass Relay 随着Relay / tir中优化遍数的增加,执行并手动维护其依赖关系变得很棘手.引入了一个基础结构来管理优化过程,将其应用于TVM堆栈中IR的不同层. Relay ...

  8. Pass Infrastructure基础架构(下)

    Pass Infrastructure基础架构(下) pass注册 PassRegistration该类在示例中简要显示了各种pass类型的定义 .该机制允许注册pass类,以便可以在文本pass管道 ...

  9. Pass Infrastructure基础架构(上)

    Pass Infrastructure基础架构(上) Operation Pass OperationPass Op-Specific OperationPass Op-Agnostic Depend ...

  10. Python break语句,continue语句,pass 语句

    1 break 语句用来终止循环语句 下面写2个语句认识一下break # demo1 while循环 num = 10 while num > 0:print('当前变量值 :', num)n ...

最新文章

  1. spoj2 Prime Generator
  2. -%3e运算符在c语言中的作用,C语言逻辑运算符知识整理
  3. Spring boot模板引擎
  4. 【数据结构与算法】之深入解析“24点游戏”的求解思路与算法示例
  5. 常发生的异常有哪些, 如何使用异常?
  6. linux+dd模式,Linux命令之dd详解
  7. 【最短路】【Floyed】医院设置(ssl 1614)
  8. 配置mysql环境变量
  9. 在Windows Server2008上安装SQL2008群集
  10. The Importance of Money in Life
  11. CentOS 7.0系统安装配置LAMP服务器(Apache+PHP+MariaDB)
  12. android studio手机与蓝牙收发数据_QT for Android :蓝牙
  13. 点击搜索到获得结果之间的零点几秒 都发生了什么?
  14. 方差分析结果如何看?指标怎么计算?
  15. 信奥赛1990:【19CSPS提高组】划分 解题报告(附ac主代码)
  16. android studio 或者 idea 前进 后退 箭头图标添加到 工具栏
  17. Ubuntu 22.04 x86_64 OVF (sysin)
  18. ad-hoc,软ap(windows无线网卡制作WIFI热点)
  19. 智慧医院3D导航导诊系统-基础功能详解
  20. 三、C语言常用的库函数

热门文章

  1. java 数组减除值_java数组操作 - osc_hwpd2zko的个人空间 - OSCHINA - 中文开源技术交流社区...
  2. Shell脚本编程之(四)善用判断式
  3. iphone android传照片大小,iPhone竟然可以传文件到安卓机?99%的人都不知道
  4. python︱Python进程、线程、协程详解、运行性能、效率(tqdm)
  5. Caffe︱构建lmdb数据集、binaryproto均值文件及各类难辨的文件路径名设置细解
  6. EL表达式用法---查询博客
  7. Django的url别名功能的使用
  8. “提速降费” 并非一蹴而就 矛头齐指运营商有失偏颇
  9. 服务器遭受***后的处理过程
  10. 从网页监听Android设备的返回键