博客
关于我
P1207 双重回文数
阅读量:797 次
发布时间:2023-02-26

本文共 2269 字,大约阅读时间需要 7 分钟。

练好基本功
进制转换

#include     
#include
#include
#include
#include
using namespace std;int n,s,a[1000],t,ans[1000];int tear(int x,int p)//把x拆成p进制数 { int l=0; while(x) { a[++l]=x%p; x/=p; } int f=1; for(int i=1;i<=l/2;i++) { if(a[i]!=a[l-i+1]) {f=0;break;} } return f;}int main(){ scanf("%d%d",&n,&s); for(int i=s+1;t!=n;i++) { int l=0,y=2; while(l<2&&y<=10) { l+=tear(i,y); y++; } if(l==2) ans[++t]=i; } for(int i=1;i<=t;i++) printf("%d\n",ans[i]); return 0;}

转载于:https://www.cnblogs.com/dfsac/p/7587917.html

优化后的文章内容:

练好基本功
进制转换

#include     
#include
#include
#include
#include
using namespace std;int n,s,a[1000],t,ans[1000];int tear(int x,int p)//把x拆成p进制数 { int l=0; while(x) { a[++l]=x%p; x/=p; } int f=1; for(int i=1;i<=l/2;i++) { if(a[i]!=a[l-i+1]) {f=0;break;} } return f;}int main(){ scanf("%d%d",&n,&s); for(int i=s+1;t!=n;i++) { int l=0,y=2; while(l<2&&y<=10) { l+=tear(i,y); y++; } if(l==2) ans[++t]=i; } for(int i=1;i<=t;i++) printf("%d\n",ans[i]); return 0;}

转载于:https://www.cnblogs.com/dfsac/p/7587917.html

说明:以上内容主要包含了一个C语言程序,程序的功能是判断某个数是否为双进制数。如果一个数可以表示为两进制数,那么这个数就会被记录下来。程序的大致流程是:

  • 包含必要的头文件
  • 定义函数tear,用于将一个数拆分成指定进制下的各个位数,并检查这些位数是否成回文
  • main函数中读取输入参数,遍历从s+1n的所有数
  • 对每一个数,使用tear函数分别计算其在不同进制下的位数
  • 如果某个数在某个进制下的位数为2,则将该数记录下来
  • 最后将所有满足条件的数按顺序输出
  • 这个程序的实现思路相对直接,但如果需要优化,可以通过增加缓存机制、优化进制转换的算法等方式来提升性能。

    你可能感兴趣的文章
    oracle dblink结合同义词的用法 PLS-00352:无法访问另一数据库
    查看>>
    Oracle dbms_job.submit参数错误导致问题(ora-12011 无法执行1作业)
    查看>>
    oracle dg switchover,DG Switchover fails
    查看>>
    Oracle EBS-SQL (BOM-15):检查多层BOM(含common BOM).sql
    查看>>
    Oracle EBS环境下查找数据源(OAF篇)
    查看>>
    oracle Extract 函数
    查看>>
    Oracle GoldenGate Director安装和配置(无图)
    查看>>
    oracle ogg 单实例双向复制搭建(oracle-oracle)--Oracle GoldenGate
    查看>>
    oracle scott趣事
    查看>>
    oracle script
    查看>>
    Oracle select表要带双引号的原因
    查看>>
    Oracle SOA Suit Adapter
    查看>>
    Oracle Spatial GeoRaster 金字塔栅格存储
    查看>>
    Oracle Spatial空间数据库建立
    查看>>
    UML— 活动图
    查看>>
    oracle sqlplus已停止工作,安装完成客户端后sqlplus报“段错误”
    查看>>
    Oracle Statspack分析报告详解(一)
    查看>>
    oracle tirger_在Oracle中,临时表和全局临时表有什么区别?
    查看>>
    oracle where 条件的执行顺序分析1
    查看>>
    Oracle 中的 decode
    查看>>