力扣788. 旋转数字
题意
我们称一个数 X 为好数, 如果它的每位数字逐个地被旋转 180 度后,我们仍可以得到一个有效的,且和 X 不同的数。要求每位数字都要被旋转。
如果一个数的每位数字被旋转以后仍然还是一个数字, 则这个数是有效的。0, 1, 和 8 被旋转后仍然是它们自己;2 和 5 可以互相旋转成对方(在这种情况下,它们以不同的方向旋转,换句话说,2 和 5 互为镜像);6 和 9 同理,除了这些以外其他的数字旋转以后都不再是有效的数字。
现在我们有一个正整数 N, 计算从 1 到 N 中有多少个数 X 是好数?
示例:
输入: 10
输出: 4
解释:
在[1, 10]中有四个好数: 2, 5, 6, 9。
注意 1 和 10 不是好数, 因为他们在旋转之后不变。
提示:
N 的取值范围是 [1, 10000]。
题解
class Solution {
public int rotatedDigits(int n) {
int res=0;
Set<Integer> set0 = new HashSet<>();
Set<Integer> set1 = new HashSet<>();
set0.add(0);set0.add(1);set0.add(8);
set1.add(2);set1.add(5);set1.add(6);set1.add(9);
boolean rec;
int t1,t;
for(int i=1;i<=n;i++){
t = i;
rec=false;
while(t!=0){
t1 = t%10;
if(!set0.contains(t1)&&!set1.contains(t1)) break;
if(set1.contains(t1)) rec=true;
t/=10;
}
if(t!=0) continue;
if(rec) res++;
}
return res;
}
}

相关推荐
机械三维3D设计图-等离子清洗机.zip
机械三维3D设计图-等离子清洗机.zip
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
内容概要:本文提出了一种基于神经网络的数据驱动迭代学习控制(ILC)算法,专门针对具有未知动态模型和重复任务需求的非线性单输入单输出(SISO)离散时间系统,应用于无人车路径跟踪问题,并提供了完整的Matlab代码实现。该方法充分利用神经网络强大的非线性逼近能力和数据驱动特性,结合迭代学习控制在周期性任务中逐次提升控制性能的优势,无需依赖被控对象的精确数学模型,即可实现对期望轨迹的高精度、渐进式跟踪。文中系统阐述了算法的整体架构设计、关键控制律的构建方式、权重更新机制以及在无人车系统中的具体实施流程,展示了其在复杂非线性环境下的有效性和鲁棒性。; 适合人群:具备自动控制理论、机器学习基础知识和Matlab编程能力的研究生、科研人员,以及从事自动驾驶、智能控制、机器人控制等领域的工程技术人员。; 使用场景及目标:①解决无人车、工业机器人等在执行重复性路径任务时的高精度轨迹跟踪问题;②为研究数据驱动控制、迭代学习控制与神经网络的深度融合提供一个完整的仿真案例和技术参考;③辅助研究人员复现先进控制算法,服务于学术论文的验证、课题研究或实际工程项目的技术预研。; 阅读建议:建议读者在学习过程中紧密结合所提供的Matlab代码,深入剖析算法各模块的具体实现逻辑,推荐预先掌握迭代学习控制的基本原理和神经网络的相关知识,并通过Simulink搭建仿真环境,进行不同工况下的实验验证,以深刻理解算法的控制效果、收敛特性及关键参数的调优策略。
机械三维3D设计图-线圈自动包绝缘胶纸机.zip
机械三维3D设计图-线圈自动包绝缘胶纸机.zip
MATLABSimulink模拟及会议论文,关于具备自动温度控制和能耗分析的智能太阳能热水系统。.zip
1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
英特尔无线网卡AC8265驱动
英特尔无线网卡AC8265驱动


