尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

打卡信奥刷题(3445)用C++实现信奥题 P10404 「XSOI-R1」原神数

打卡信奥刷题(3445)用C++实现信奥题 P10404 「XSOI-R1」原神数
📅 发布时间:2026/7/14 7:46:12

P10404 「XSOI-R1」原神数

题目描述

原神数xxx需要同时满足以下条件:

  • xxx为质数。

  • xxx的十进制位两两不同。

比如131131131不是原神数,因为他的百位和个位相等;424242也不是,因为不是质数;171717就是一个原神数。

有qqq次询问,现在要你求出lll到rrr之间的原神数数量。

输入格式

第一行一个正整数qqq。

接下来qqq行每行两个正整数lll,rrr。

输出格式

qqq行qqq个正整数,表示答案。

输入输出样例 #1

输入 #1

4 45 66 100 140 2 90 114514 1919810

输出 #1

4 6 23 13321

说明/提示

【样例解释 #1】

在100∼140100 \sim 140100∼140之间的原神数有103,107,109,127,137,139103,107,109,127,137,139103,107,109,127,137,139,共666个。

数据规模与约定

本题采用捆绑测试。

  • subtask 0(15 pts):1≤l≤r≤1021 \le l \le r \le 10^21≤l≤r≤102。

  • subtask 1(15 pts):1≤l≤r≤1041 \le l \le r \le 10^41≤l≤r≤104。

  • subtask 2(35 pts):1≤l≤r≤1071 \le l \le r \le 10^71≤l≤r≤107。

  • subtask 3(35 pts):1≤l≤r≤10181 \le l \le r \le 10^{18}1≤l≤r≤1018。

对于所有数据,保证1≤l≤r≤10181 \leq l \leq r \leq 10^{18}1≤l≤r≤1018,1≤q≤1051 \leq q\leq 10^51≤q≤105。

C++实现

#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+50;intpr[N],tot,q;longlongl,r;vector<int>Genshin;boola[N]={1,1},vis[10];voidzhi(){for(inti=2;i<=N;i++){if(!a[i])pr[++tot]=i;for(intj=1;j<=tot&&i*pr[j]<=N;j++){a[i*pr[j]]=1;if(i%pr[j]==0)break;}}}boolispr(intx){if(x<=N)return!a[x];for(inti=1;pr[i]*pr[i]<=x;i++)if(x%pr[i]==0)return0;return1;//没有就是质数}voiddfs(intlen,intstep,intgoal){if(len==goal){//达到目标长度if(ispr(step))Genshin.push_back(step);//判断是不是质数return;}for(inti=0;i<=9;i++){if(len==0&&i==0)continue;//特判第一位为零if(vis[i])continue;//保证没被使用过vis[i]=1;//标记dfs(len+1,step*10+i,goal);//继续递归vis[i]=0;//回溯}}signedmain(){scanf("%d",&q);zhi();for(inti=1;i<=9;i++)dfs(0,0,i);//生成数while(q--){scanf("%lld%lld",&l,&r);printf("%d\n",upper_bound(Genshin.begin(),Genshin.end(),r)-lower_bound(Genshin.begin(),Genshin.end(),l));}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

相关新闻

  • C 语言指针练手:解 4 嫌疑人谋杀案,从冗余到简洁的优化之路
  • 佛山本地气动工具售后维修 - 中媒介
  • Qwen2-1.5B_rai_1.7.1_hybrid开发者指南:API接口设计与扩展开发

最新新闻

  • 大模型时代程序员转型:RAG与AI Agent开发指南
  • 专科生AI时代就业:8大降AI率工具实战指南
  • 深度解析跨境电商独立站运营的难点与要点
  • furrr社区精选:用户分享的最佳实践与创新用法
  • Nemotron-Labs-Diffusion-3B-4bit核心功能解析:扩散语言模型的图像描述生成实战
  • 纽约市民免费学Coursera:公共图书馆数字身份激活指南

日新闻

  • AWS SSM安全运维实践:零公网暴露的合规远程开发方案
  • Tableau 2024.1 图表选择指南:5种业务场景与最佳图表类型匹配
  • dsPIC33FJ与CMT-8540S-SMT在嵌入式音频处理中的高效应用

周新闻

  • IX9104 PCIe5.0 高速交换芯片@ACP#完整规格 + 应用场景总结
  • Unity游戏集成Coze智能体:实现NPC智能对话与知识库联动
  • SAP EPIC 建行回单查询:从标准类CL_EPIC_EXAMPLE_CN_CCB_GHTD到Z类的5处关键修改

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号