#acm#求指定格式的整数累加和

这里写图片描述

这道题卡了我好久好久,到了后面盆友给我提示才想出来……(哭)
假设输入3 6:

这里写图片描述

自我感觉图很清晰~思路很明确。
把n对应与m替换。
第一层循环是横轴,i=0;i<=m-n的绝对值;i++
第二层循环纵轴,j=i;j<=m-n的绝对值;j++(图中 j-j+1==(j+1)-j )
再相应用公式结果输出!

附上代码:


import java.util.Scanner;

public class Main_test2 {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        while(input.hasNext()){
            int m=input.nextInt();
            int n=input.nextInt();
            int sum=0;
            double a;
            if(m<n){
                for(int i=0;i<=Math.abs(m-n);i++){
//                  System.out.println("i="+i);
                    for(int j=i;j<=Math.abs(m-n);j++){
                        a=(m+i)*Math.pow(10, (j-i));
                        sum+=a;
//                      System.out.println("j="+j);
//                      System.out.println("a="+a);
//                      System.out.println("sum="+sum);
//                      System.out.println();
                    }
                }
            }
            else{
                for(int i=0;i<=Math.abs(m-n);i++){
                    for(int j=i;j<=Math.abs(m-n);j++){
                        a=(m-i)*Math.pow(10, (j-i));
                        sum+=a;
                    }
                }
            }
            System.out.println(sum);                    
        }   
    }
}

猜你喜欢

转载自blog.csdn.net/floris_lovelace/article/details/80425577