如何做网商商城的网站,青岛十大外贸公司,青海网站开发,沈阳 网站开发一、题目 数列求值 【问题描述】 给定数列 1, 1, 1, 3, 5, 9, 17, …#xff0c;从第 4 项开始#xff0c;每项都是前 3 项的和。求第 20190324 项的最后 4 位数字。 【答案提交】 这是一道结果填空的题#xff0c;你只需要算出结果后提交即可。本题的结果为一个 4 位整数从第 4 项开始每项都是前 3 项的和。求第 20190324 项的最后 4 位数字。 【答案提交】 这是一道结果填空的题你只需要算出结果后提交即可。本题的结果为一个 4 位整数提示答案的千位不为 0在提交答案时只填写这个整数填写多余的内容将无法得分。 二、分析 看到这个题目想到可以用动态数组的方式
a[0]a[1]a[2]a[3]1113
将前三个元素相加放到第四个位置然后将第二、第三、第四个元素复制到它前一个的位置。 代码
package lan2019;public class C数列求和 {public static void main(String[] args) {int[] a new int[20190324];a[0] 1;a[1] 1;a[2] 1;for(int i 3; i 20190323; i) {a[i] a[i-3] a[i-2] a[i-1];//只要求后四位a[i] % 10000;}System.out.println(a[20190323]);}
}结果 4659 反思
因为我设置的数组下表是从0开始的注意注意i的范围以及不要超过数组的长度
也可以数组下标从1开始更清楚一点 package lan2019; public class C数列求和 { public static void main(String[] args) { int[] a new int[20190325]; a[1] 1; a[2] 1; a[3] 1; for(int i 4; i 20190324; i) { a[i] a[i-3] a[i-2] a[i-1]; //只要求后四位 a[i] % 10000; } System.out.println(a[20190324]); } }