AI 加码,字节跳动青训营,等待您的加入~
1、报名方式
- 点击以下链接:字节跳动青训营报名入口
- 扫描图片二维码:
2、考核内容
在指定的题库中自主选择不少于 15 道算法题并完成解题,其中题目难度分配如下:
- 简单题不少于 10 道
- 中等题不少于 4 道
- 困难题不少于 1 道
解答代码
49. 连续子串的和(简单)
代码实现:
import java.util.ArrayList;
import java.util.List;
public class Main {
public static int solution(int n, int b, List<Integer> sequence) {
int count = 0; // 用于计数满足条件的连续子串
// 遍历整个序列
for (int i = 0; i < n; i++) {
// 对于每个起始位置 i,计算从 i 开始的连续子串的和
int sum = 0;
for (int j = i; j < n; j++) {
sum += sequence.get(j);
// 判断当前子串的和是否能被 b 整除
if (sum % b == 0) {
// 如果能整除,计数加 1
count++;
}
}
}
// 返回计数结果
return count;
}
public static void main(String[] args) {
// 测试用例
List<Integer> sequence = new ArrayList<>();
sequence.add(1);
sequence.add(2);
sequence.add(3);
// 检查函数返回值是否等于预期值
System.out.println(solution(3, 3, sequence) == 3); // 应该输出 true
}
}
运行结果: