蓝桥杯--手机尾号

本文探讨了一种利用暴力搜索算法解决数字序列问题的方法,着重于找出特定条件下的连续数字组合,如AAAB、ABAB等,并分析了包含6、8、9的特殊计数规则。通过代码实现,总结了解题策略并给出了优化后的结果。
摘要由CSDN通过智能技术生成

1.题目

 2.思路 直接暴力 搜索 

3.代码

import java.util.Scanner;

public class J83 {
	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int sum=0;
		int [] f=new int[n];
		for(int i=0;i<n;i++) {
			f[i]=scan.nextInt();
		}
		for(int i=0;i<f.length;i++) {
	
		int a=f[i]/1000;//左边第一位
		int b=f[i]/100%10;//左边第二位
		int c=f[i]/10%10;//右边第二位
		int d=f[i]%10;//右边第一位
		if(b==a+1&&c==b+1&&d==c+1) {
			sum+=5;
		}
		 if(d+1==c&&c+1==b&&b+1==a) {
			sum+=5;
		}
		 if(a==b&&b==c) {//AAAB
			sum+=3;
		}
		 if(b==c&&c==d) {//ABBB
			sum+=3;
		}
		 if(a==b&&c==d) {//AABB
			 sum+=1;
		 }
		 if(a==c&&b==d) {//ABAB
				sum+=1;
			}
		 if(a==6) {//每一项是否含有 6 8 9
			 sum+=1;
		 }
	    if(a==8) {
	    	sum+=1;
	    }
	    if(a==9) {
	    	sum+=1;
	    }
	    if(b==6) {
			 sum+=1;
		 }
	    if(b==8) {
	    	sum+=1;
	    }
	    if(b==9) {
	    	sum+=1;
	    }
	    if(c==6) {
			 sum+=1;
		 }
	    if(c==8) {
	    	sum+=1;
	    }
	    if(c==9) {
	    	sum+=1;
	    }
	    if(d==6) {
			 sum+=1;
		 }
	    if(d==8) {
	    	sum+=1;
	    }
	    if(d==9) {
	    	sum+=1;
	    }
	    System.out.println(sum);
	    sum=0;
	}
	}
}

4.总结 不错 加油

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值