当前位置:首页 > 开发 > 编程语言 > 算法 > 正文

算法机试题

发表于: 2015-07-19   作者:李亚飞   来源:转载   浏览:
摘要:        在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。        这道题大致意思是:输入一个数,比如4,。这时会输出:           &n

       在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。

       这道题大致意思是:输入一个数,比如4,。这时会输出:

               4 = 1 + 1 + 1 + 1

               4 = 1 + 2 + 1 

               4 = 1 + 3

               4 = 2 + 1 + 1

               4 = 2 + 2

               4 = 3 + 1

        解决:

import java.util.Scanner;

public class Test1 {
    public static void main(String[] args) {
        //提示输入
        System.out.print("请输入:");
        Scanner input = new Scanner(System.in);
        int t = input.nextInt();
		
        //求比i小的所有数
        int[] sum = nums(t);
        for (int i = 0; i < sum.length; i++) {
            for (int j = 0; j < sum.length; j++) {
		         int temp = 0;
		         String str = t + "=" + sum[i] + "+" + sum[j];
		         temp += sum[i] + sum[j];
		         while(temp < t){
		             temp += 1;
		             str += "+" +1;
		         }
		         if(temp == t){
		             System.out.println(str);
		         }
	         }
	    }
		
    }
	
    //得到比输入数小的所有数
    public static int[] nums(int i){
	    int[] temp = new int[i-1];
	    i -= (i-1);
	    for (int j = 0; j < temp.length; j++) {
	        temp[j] = i;
	        i++;
	    }
	    return temp;
    }
}

 

 

算法机试题

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

推荐文章
编辑推荐
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号