当前位置: 首页 > 知识库问答 >
问题:

是否可以在同一文件中使用以前打印的行作为新部分的输入?

呼延高超
2023-03-14

public class bonus 1 { public static void main(String[]args){

int n = Integer.parseInt(args[0]);
int[] numbers = new int[n];
for (int i = 0; i < n; i++ ) {
  numbers[i] = i;
}
for (int i = 0; i < n; i++ ) {
  int r = i + (int)(Math.random() * (n - i));
  int tmp = numbers[i];
  numbers[i] = numbers[r];
  numbers[r] = tmp;
  System.out.print(numbers[i]);
}

int min = Integer.MAX_VALUE;
int count = 0;

while(data.hasNext()){
  int y = data.nextInt();
  if(y < min){
    min = y;
    count += 1;
  }
}
System.out.println(count);

} }

这段代码并不完整,前两个for循环将在commandline -1中生成一个介于0和给定数字之间的数组,例如java Bonus1 10将首先生成一个介于0-9之间的数组,然后它将这些数字混洗,从而创建一个随机排列。

因此,例如,如果我得到排列7 8 2 3 4 5 1 0 6 9,它将计数7为最低,然后2为最低,然后1为最低,最后0为最低,使得检测到新的最低数字的总次数为4。

但这只有在我使用输入时才有效,我需要使用先前生成的输出作为同一文件中的输入,有没有聪明的方法来做到这一点?

共有1个答案

刁茂才
2023-03-14

您应该像这样迭代数组number

public static void main(String[] args) {
    int n = Integer.parseInt(args[0]);
    int[] numbers = new int[n];
    for (int i = 0; i < n; i++) {
        numbers[i] = i;
    }
    for (int i = 0; i < n; i++) {
        int r = i + (int) (Math.random() * (n - i));
        int tmp = numbers[i];
        numbers[i] = numbers[r];
        numbers[r] = tmp;
        System.out.print(numbers[i]);
    }
    System.out.println();

    int min = Integer.MAX_VALUE;
    int count = 0;

    for (int i = 0; i < n; ++i) {
        int y = numbers[i];
        if (y < min) {
            min = y;
            ++count;
        }
    }

    System.out.println(count);
}

输出:

6457098123
3
 类似资料:
  • 问题内容: 是否可以在IPython Notebook中以某种不同的颜色显示某些输出?例如,类似以下内容的东西: 问题答案: 当然,笔记本具有自己的语法突出显示。因此,在其他地方使用颜色时,我会格外小心,以免使您自己或他人难以阅读(例如,输出应仅是黑色,但如果有例外,则将部分显示为红色)。 但是(令我惊讶),看来您可以使用ANSI转义码(即使在浏览器中)。至少,我可以: 在默认的Python提示符

  • 一段时间以来,我一直在寻找解决spring batch问题的方法。我应该使用spring batch从csv文件复制/创建新的csv文件。这里有一个例子: 下面是一个创建输出编号1的示例,例如File1: 其他输出文件也是一样的,但是你可以看到一些输出使用相同的源,事实上,我不能读取相同的数据两次来重新生成一个新的输出,所以我尝试将它们作为资源存储在地图上(资源将被使用不止一个),也就是说,我将

  • 问题内容: 我想将循环的输出打印到同一行的屏幕上。 如何以最简单的方式针对Python 3.x进行操作 我知道在Python 2.7的末尾使用逗号来问这个问题,即print I,但是我找不到Python 3.x的解决方案。 屏幕输出。 我要打印的是: 新读者也可以访问此链接http://docs.python.org/release/3.0.1/whatsnew/3.0.html 问题答案: 来自

  • 问题内容: 简而言之,我需要能够将已编译的可执行文件粘贴到Java jar文件中,然后能够从Java运行它(可能通过)。 的 原因 ,是我想使用Java来包裹ImageMagick的可执行文件成分的图像处理弹性的Map Reduce任务。EMR只希望获取一个jar文件,因此我认为没有空间在旋转的数据节点上安装软件。 问题答案: jar中的可执行文件是一种资源,您可以通过Stream访问它,并将可执

  • 问题内容: 我正在建立一个新的由AJAX驱动的网站,其中包含不同的部分。每个部分都需要一组新的Javascript函数才能运行。我宁愿不要一开始就加载每个脚本,因为可能会有很多脚本。 有没有一种方法可以使用AJAX加载新脚本并删除旧脚本(以确保类似的变量名或函数签名不存在兼容性问题)。 谢谢 编辑 -jQuery很好,它不必是老式的Javascript 问题答案: 三件事: 1)是,您可以加载新脚

  • 我正在使用LSTM(PyTorch)进行多元时间序列预测。让我们想象一下这种情况:我有两个时间序列,A和B,我想用A和B的先前值(在t之前)预测B的t值。这样的预测效果很好,我的模型得到了很好的结果。 但是,如果(在测试期间,训练后)我想使用B的预测值作为下一个时间步骤的输入,而不是实际值,该怎么办?例如:我预测B的第一个值,做一个步骤,把预测值代替一个真实值,然后再次进行预测。然后我使用两个预测