[Day8]Rare Easy Problem

上一篇介绍了2 the 9s,是一题会需要重复执行的题目,使用回圈跟副程序会比较容易执行,整体上不会太难的一题。

今天要来讲解的题目是 Rare Easy Problem,
附上程序码,

import java.util.;
import static java.lang.System.
;
public class main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
long a=sc.nextLong();
boolean first =true;
if(a==0) break;

	for(int i =9;i>=0;i--){
		if((a-i)%9==0){
			if(first==false) System.out.print(" ");
			System.out.print((a-i)/9*10+i);
			first = false;
		}
		
	}
 System.out.println();

}

}
};

题目要求输入一个数字,那个数字至少二位数,那个数字是N-M得来的,M是N除以10的整数(%10),要我们输出可能的N,并由小排到大,
算式是这样
N = 10*M + i ( 0 ≦ i ≦ 9)
N - M = 9M + i
N - M - i = 9M
则N = [N - M - i ] / 9 * 10 + i
( 9M )
只要推倒出公式的话这题就会很简单了,接下来就是使用回圈判断i是多少,i越大N越小,所以从9到0,才会从小排到大,因为不只一个,所以要写一个判断空格的才能跟题目要求的输出一模一样。
今天就讲解到这里,这题我觉得算是比较难一点的题目,但是也不到二星那麽难,主要题目是在考你的数学能力,然後再看你能不能想办法写出你脑中的想法。
明天也是新的题目,会介绍Beat the Spread!,继续加油!


<<:  OpenStack Nova 介绍 2

>>:  数据中台(Data Middle Office)

[Day29] Tableau 轻松学 - TabPy 启动排程

前言 通常我们会希望服务器主机开机後,就立即上线服务客户,这项要求对 TabPy Server 也不...

[Day24] swift & kotlin 游戏篇!(6) 小鸡BB-游戏制作-线条绘制与弹跳动画

游戏示意 swift - 游戏功能 目前游戏画面长这样 而中间的线我们用程序来画 思路很简单 左右两...

Day 29 - WooCommerce: 接收虚拟帐号付款成功通知

今天铁人赛的倒数第一天了 ^^,要和大家分享的是,如何接收永丰银行丰收款金流平台收到顾客的银行转帐汇...

Day24 React专案资料夹分类方式

React本身并没有特别限定专案资料夹的设定方式,但这边建议可以朝以下两种方式着手: 依照功能或所属...

【PHP Telegram Bot】Day10 - Long Polling、持续接收与发送讯息

昨天有讲到一个叫做 getUpdates 的方法,但我们没有填任何参数,今天要利用 offset 与...