1. 在 for 循环外面的输入
特点 :只输入1 次 ,和循环次数无关。对应题目 :一般是第一行的 "开场白",比如 n(东西总数)和 m(操作次数)。代码例子:
int n = scan.nextInt(); // 只输入1次
int m = scan.nextInt(); // 只输入1次
2. 在 for 循环里面的输入
特点 :输入的数量完全取决于循环次数。
-
如果循环
m次,每次循环读3个数,那总共就读3 * m个数。对应题目 :一般是接下来的m条指令,每条指令读L、R、X。代码例子:for(int i = 0;i < m;i++) { // 循环 m 次
int l = scan.nextInt(); // 每次循环读1个
int r = scan.nextInt(); // 每次循环读1个
int x = scan.nextInt(); // 每次循环读1个
// 所以这3行加起来,每次循环读3个,m次循环就读3*m个
}
也就是说这个例子输入的参数得是九个,三行三列
3 2 1
2 5 9
7 4 6
用我们的题目算一下总输入数
示例输入里:
- 循环外:读了
5和3→ 2 个数。 - 循环内:循环
3次,每次读3个数 → 3*3=9 个数。 - 总共:2+9=11 个数。你数一下之前的示例输入,是不是正好 11 个数?
一句话总结
- 循环外的输入:只读 1 次。
- 循环内的输入:读的次数 = 循环次数 × 每次循环读的个数。