zoukankan      html  css  js  c++  java
  • 1515:打印1到最大的N位数 @jobdu

    题目1515:打印1到最大的N位数

    时间限制:1 秒

    内存限制:128 兆

    特殊判题:

    提交:625

    解决:323

    题目描述:

    给定一个数字N,打印从1到最大的N位数。

     

    输入:

    每个输入文件仅包含一组测试样例。
    对于每个测试案例,输入一个数字N(1<=N<=5)。

     

    输出:

    对应每个测试案例,依次打印从1到最大的N位数。

     

    样例输入:
    1
    样例输出:
    1
    2
    3
    4
    5
    6
    7
    8
    9


    考察的就是大数据输入。

    这种求全部组合的题目,一概可以用DFS来做。虽然本题Java中有自带BigInteger类,但还是按照出题人的意思来做吧。


    import java.io.BufferedInputStream;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.util.Scanner;
    
    
    public class S12 {
    
    	public static void main(String[] args) throws FileNotFoundException {
    		BufferedInputStream in = new BufferedInputStream(new FileInputStream("in.in"));
    		System.setIn(in);
    		Scanner cin = new Scanner(System.in);
    		
    		while (cin.hasNextInt()) {
    			int n = cin.nextInt();
    			print1ToMaxOfNDigits(n);
    		}
    	}
    
    	private static void print1ToMaxOfNDigits(int n) {
    		if(n <= 0){
    			return;
    		}
    		
    		char[] number = new char[n];
    		rec(number, n, 0);
    	}
    	
    	private static void rec(char[] number, int length, int curDep){
    		if(curDep == length){
    			printNumber(number);
    			return;
    		}
    		
    		for(int i=0; i<10; i++){
    			number[curDep] = (char) (i+'0');
    			rec(number, length, curDep+1);
    		}
    	}
    	
    	private static void printNumber(char[] number){
    		boolean startingZero = true;
    		for(int i=0; i<number.length; i++){
    			if(number[i] != '0'){		// 过滤掉前导零
    				startingZero = false;
    			}
    			if(!startingZero){
    				System.out.print(number[i]);
    			}
    		}
    		if(!startingZero){
    			System.out.println();
    		}
    		
    	}
    }
    


  • 相关阅读:
    ES6 语法
    使用过滤器进行跨域
    java读取资源文件(Properties)
    跨域
    java提取(获取)博客信息(内容)
    SSM命名规范框架
    学校管理系统设计java(数据库、源码、演讲内容、ppt等)
    学校管理系统C#(数据库、源码、演讲内容、ppt等)
    vue快速使用
    故障排除:无法启动、访问或连接到 Azure 虚拟机上运行的应用程序
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3478684.html
Copyright © 2011-2022 走看看