USACO - 1.2.5 - Dual Palindromes

转载请注明出处

摘要:模拟,回文数 ,进制转换

一. 题目翻译

1. 描述:

           如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。

          事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数。

          编一个程序,从文件读入两个十进制数N (1 <= N <= 15)S (0 < S < 10000)然后找出前N个满足大于S且在两种或两种以上进制(二进制至十进制)上是回文数的十进制数,输出到文件上。

          本问题的解决方案不需要使用大于32位的整型

2. 格式:

          PROGRAM NAME:dualpal

          INPUT FORMAT:

          (file dualpal.in)

          只有一行,用空格隔开的两个数N和S。

          OUTPUT FORMAT:

          (file dualpal.out)

          N行, 每行一个满足上述要求的数,并按从小到大的顺序输出.

3. SAMPLE:
          SAMPLE INPUT:
          3 25
          SAMPLE OUTPUT:
          26
          27
          28          
                    
二.  题解
1. 题意理解(将问题分析清楚,大致用什么思路):
          类似于上一道题目,题目的核心考查的点还是回文数 。由于题目数据很小,从s开始枚举,判断就可以了。

2. 具体实现(具体实现过程中出现的问题):
          参考代码注释。

3. 启示:
           和1.2.4的题目很相似,可以一起积累。

三.  代码
/*
ID:fightin1
LANG:JAVA
TASK:dualpal
*/
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.Scanner;

public class dualpal {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try {
			Scanner in = new Scanner(new BufferedReader(new FileReader("dualpal.in")));
			PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("dualpal.out")));
			int times = in.nextInt(); // 题目中的N
			int start = in.nextInt(); // 题目中的S
			
			int cnt1 = 0; //用来记录 当前已经发现的满足条件的数,如果cnt1大于times时,则可以停止程序了。
			for (int i=start+1;cnt1<times;i++){
				int cnt2 = 0; //用来判断当前数支持多少种进制的回文数
				for (int j=2;j<=10;j++){
					if (isP(transfer(i, j))){
						cnt2++;
						if(cnt2==2){ //等于两种的时候就可以停止循环了,满足条件。cnt1++
							cnt1++;
							pw.println(i);
							break;
						}
					}
				}
			}
			pw.close();
			in.close();
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
	
	/**
	 * 进制转化
	 */
	public static String transfer (int num , int base) {
		String result = "";
		while (num!=0){
			result = num%base + result;
			num = num/base;
		}
		return result ;
	}
	/**
	 *判断是否是回文数 
	 */
	public static boolean isP(String num){
		for (int i=0;i<num.length()/2;i++){
			if (num.charAt(i)!=num.charAt(num.length()-1-i)){
				return false;
			}
		}
		return true;
	}
	
}
 
vtk相机_分别用 VTK 体绘制和面绘制来实现医学图像三维重建; 序言,VTK介绍:VTK 全称为 The Visualization Toolkit (可视化工具),是一个开源、跨平台、自由获取、支持并行计算的图形应用函数;拥有3D 渲染的最新工具、提供3D交互模式以及2D绘图等。VTK 包含一个C++类库,目前提供了众多语言接口,例如 Java、Python、TCL;在三维函数库OpenGL 的基础上采用面向对象设计方法发展起来图形学基本概念和数据... 阅读详情

相关推荐

Stable-Baselines3性能优化:多环境训练对比指南(DummyVecEnv vs SubprocVecEnv)

本文深入对比了Stable-Baselines3中DummyVecEnv与SubprocVecEnv两种向量化环境的性能差异与应用场景。DummyVecEnv适用于轻量级、步进快的环境,调试友好且开销低;而SubprocVecEnv则通过真正的多进程并行,能显著加速计算密集型环境的训练。文章通过基准测试与决策树,指导开发者根据环境计算成本、CPU核心数等关键因素做出最优选择,以实现训练效率最大化。

weixin_29063979的博客 147

USACO 1.2.5 Dual Palindromes

/**//*PROG: dualpalLANG: C++*/#include iostream>#include fstream>#include string>#include cmath>using namespace std;ifstream fin("dualpal.in");ofstream fout("dualpal.out");int n,s;inline bool hui 

清风未明的代码集 603

Python实战:基于PyG和Stable-Baselines3复现柔性车间调度算法(附数据集)

本文提供了一份基于图神经网络与深度强化学习的柔性车间调度实战指南。通过PyTorch Geometric构建异构图表示车间状态,并利用Stable-Baselines3中的PPO算法训练调度智能体,详细介绍了从环境建模、网络设计到训练评估的完整代码实现,帮助开发者构建可复用的工业级智能调度系统。

ansible6ops的博客 608

[USACO 1.2.5] Dual Palindromes

[题目描述] Dual Palindromes 双重回文数 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。 事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数。  编一个程序,从文件读入两个十进制数

_Nirvana 514

Hierarchical-Localization 环境配置与依赖管理全攻略

本文提供了Hierarchical-Localization(hloc)视觉定位工具箱从零开始的环境配置与依赖管理全攻略。针对Windows、Ubuntu和macOS三大操作系统,详细解析了Python版本选择、PyTorch与CUDA版本匹配、pycolmap版本锁定等核心依赖的安装步骤,并汇总了权重文件格式、NumPy版本、路径配置等常见问题的排查与解决方案,旨在帮助用户高效搭建稳定的hloc开发环境。

weixin_29066781的博客 335

ACR 磁共振安全手册 2024 更新版:全面保障 MRI 安全实践

MR 环境:MR 系统周围的三维空间,包含法拉第屏蔽体积和 9 高斯线,医疗设备在此区域可能因暴露于 MR 设备产生的电磁场而构成危险,需进行访问控制以降低风险MR 受控访问区域:MR 系统周围的局部定义区域,包含 MR 环境(包括其静磁场),访问仅限于授权人员MR 抛射物区域:围绕 MRI 系统的 IV 区区域,铁磁物体在此有成为抛射物的风险图一 磁共振环境:场地规划与区域划分。

楚山之石的博客 2602

USACO1.2.5 Dual Palindromes 双重回文数

一.题目要求 Dual Palindromes Mario Cruz (Colombia) & Hugo Rickeboer (Argentina) A number that reads the same from right to left as when read from left to right is called a palindrome. The number 123

ge_rui_jun的专栏 567

V4L2教程(1):Ubuntu V4L2开发环境搭建与设备探索

欢迎来到V4L2学习指南的第一篇!本文将带你从零开始,在Ubuntu系统上搭建完整的V4L2视频采集开发环境。无论你是想开发视频监控、视频会议还是机器视觉应用,掌握V4L2都是Linux视频开发的必经之路。 **本节学习目标**: - 理解V4L2的基本概念和架构 - 搭建Ubuntu下的V4L2开发环境 - 掌握v4l2-ctl等调试工具的使用 - 学会检测和配置USB摄像头设备

琅嬛福地 417

Usaco 1.2.5 双重回文数(Dual Palindromes)

题目:  双重回文数 来源:  Usaco1.2.5 题目大意:  前N个大于S的且在2~10进制中有两个或以上是回文数 数据范围:  1 样例: 3

慢慢前行,跨越预言 661

第01章 Hermes Agent 是什么

如果读者所在的开发团队已经引入了 Cursor、Claude Code 这类 AI IDE,可能会有一个困惑:写代码已经有 AI 帮忙了,还需要 Hermes Agent 做什么?这一章将给出答案。Hermes Agent 不是另一个写代码的 AI,而是一个常驻在团队里的"AI 协作成员",专门负责写代码之外的协作环节——讨论需求、审查代码、查日志、监控告警、生成报告。学完本章,读者将清楚 Hermes 的定位以及它在团队里的角色。

亢少军的博客 75

YOLOv8 改进涨点 | 模块即插即用 直接可用

在目标检测任务中,注意力机制能够帮助模型聚焦于图像中的关键区域,显著提升检测精度。。创建模块代码注册模块修改任务解析tasks.py创建YAML配置文件模块核心优势适用场景计算开销SOCA捕获二阶统计信息,增强通道间相关性需要精细特征区分的场景中等SK自适应多尺度核选择多尺度目标检测中等偏高显式特征聚集-分配机制全局上下文建模中等A2-Net双线性注意力,高效全局交互复杂场景理解中等偏高CrissCross线性复杂度全局上下文高分辨率输入,长距离依赖较低。

u012133341的博客 2258

USACO 1.2.5 Dual Palindromes双重回文数 JAVA

和上一道1.2.4非常相似。 整体思路并不困难,你要做的就是先保存好输入的数据记作n和S, 然后n是用来计数的,可以后面再去管它;而S用来标记讨论的起点,你可以在一个for循环用到它。现在要做的就是写for循环了,看题目要求,for循环需要从S+1开始一个一个数字讨论过去,对于每个数字你还需要检查一下看看它的能不能在两个进制下呈现回文特性,所以你可能需要建立个sign之类的布尔变量做标记,第一次改变sign并continue中止,第二次输出并计数。 package doublePalindromic.

研究邪术! 222

10、皮肤 - 神经记录实验全流程解析

本博客详细介绍了皮肤-神经记录实验的全流程,涵盖实验所需的材料准备和具体操作方法。内容包括细胞外记录设备的设置、合成间质液(SIF)的制备与调节、小鼠后爪皮肤和胫神经的手术解剖步骤、清洁解剖后的记录准备、纤维分离与感受野识别方法,以及神经纤维机械响应的测量。该实验为研究神经纤维的活动与功能提供了重要的技术支持,适用于神经科学研究领域。

backprop5master的博客 186

1011. 【USACO题库】1.2.5 Dual Palindromes双重回文数

如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数。然后找出前N个满足大于S且在两种以上进制(二进制至十进制)上是回文数的十进制数,输出到文件上。N行, 每行一个满足上述要求的数,并按从小到大的顺序输出。只有一行,用空格隔开的两个数N和S。编一个程序,从文件读入两个十进制数。

lizhaoran22的博客 471

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【USACO题库】1.2.5 Dual Palindromes双重回文数

【USACO题库】1.2.5 Dual Palindromes双重回文数 题目大意: 编一个程序,从文件读入两个十进制数N (1 <= N <= 15)S (0 < S < 10000) 然后找出前N个满足大于S且在两种以上进制(二进制至十进制)上是回文数的十进制数,输出到文件上。 解题思路: 非常水!!!!!从S开始向后枚举(while)直到大于S且在两种以上进制(二进制至十进制)上是回文数的十进制数达到N个即可。 核心代码: (注意数组初值) ...

Don't Carry 366

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

USACO 1.2.5 Dual Palindromes 双重回文数

Dual Palindromes Mario Cruz (Colombia) & Hugo Rickeboer (Argentina) A number that reads the same from right to left as when read fromleft to right is called a palindrome. The number 12321 is a pal

才子年华 1018

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

USACO之Section1.2.5 Dual Palindromes[回文数]

这道题以前做过,【题意】输入两个数,找出前N个大于S 且在两种或两种以上进制(二进制-十进制)上是回文数的十进制数。 这道题我用了string去代替char型数组。 代码如下:/* ID:m1519591 PROG: dualpal LANG:C++*/ #include<iostream> #include<fstream> #include<string> using

qq_36079132的博客 358

USACO1.2.5 Dual Palindromes (dualpal)

从s+1开始枚举,再枚举每一个进制 /* ID: xsy97051 LANG: C++ TASK: dualpal */ #include #include #include #include using namespace std; char zf[21]={'0','1','2','3','4','5','6','7','8','9'}; map vis; string zhu

xsy_victory的专栏 436

usaco 1.2.5 dual palindromes

这题。。相当的简单。尤其是跟在前一题后面,由于数据小,比上一题还要便当,还不需要输出转换进制后的数,但是。。还是有所收获的。。- - 唉。 Dual Palindromes Mario Cruz (Colombia) & Hugo Rickeboer (Argentina) A number that reads the same from right to left as whe

shshwdr的专栏 739
上一篇: USACO - 1.2.4 - Palindromic Squares
下一篇: USACO - 1.3.1 - Mixing Milk
123114515
博客等级 码龄17年 4粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值