樣例:
6
1 1 4 5 1 4
輸出:
56 66 52 44 54 64
分析題意可以得知,就是接收一串數字,將數字按照下標每次向右移動一位(末尾循環到第一位),每次移動玩計算一下下標和數字的乘積且累加。
①接收數字量和數字
②將數字進行交換,先把末尾的保留,其余的交換完畢再賦值給第一位
③數字乘積累加
④每次累加完畢輸出結果,注意格式
代碼如下👇
static int[] arr1= new int[100];public static void main(String[] args) {Scanner scan=new Scanner(System.in);int n=scan.nextInt();arr1=new int[n+1];for (int i = 1; i <= n; i++) {arr1[i]=scan.nextInt();}for (int i = 1; i <= n; i++) {//自己分析jh1(arr1);//自己分析cj1(arr1);//自己分析暴力方法}scan.close();}public static void jh1(int []arr) {int temp=arr[arr.length-1];for (int i = arr.length-1; i >0; i--) {long sum=0;arr[i]=arr[i-1];}arr[1]=temp;}public static void cj1(int []arr) {long n=0;for (int i = 1; i <= arr.length-1; i++) {n+=arr[i]*i;}System.out.print(n+" ");}
進行優化👇? ?
交給你啦!