-1

我收到一个输入文件,里面有很多行。我希望能够计算行数,但也可以分析它们。

输入将是多行代码,只有整数。前任:

3 2
1 2
2 3
4 3
1 2
2 3
3 4

这是棘手的部分:第一行有两个数字:3 和 2。(现在 3 不相关)。2真的很重要。它代表我必须阅读和保存的行数。所以,根据这个例子,我必须保存这些行

1 2
2 3

那么为什么还有其他线路呢?- 你问。好吧,让我们将此输入视为块。在这行之后,3 2我读了两行。所以就像那个块结束了。但随后,线路4 3出现了。这意味着我必须做与第一个块完全相同的事情。所以,从这一行开始,4 3我现在知道我必须阅读并保存接下来的 3 行。表示线条

1 2
2 3
3 4

我为此费尽心思,似乎找不到任何可能的解决方案

4

1 回答 1

1

当你遇到这样的问题时,首先考虑结构很有用。这是主要算法的简单伪代码中的一种方法,可帮助您入门。除非您提供代码和问题,否则人们无法真正提供帮助。

declare line buffer array

while (read a line into buffer == succeeds) {
   scan buffer for two numbers (m, n)
   loop how many times? {
      read a line into buffer
      scan buffer for next two numbers (x, y)
   }
}

翻译成 C 语言应该不会太难。然后您可以扩展它以存储您扫描的数字、计算行数或其他任何内容。

一旦你有了一些代码,如果它不起作用并且你无法弄清楚出了什么问题,你会得到很多帮助。

于 2013-03-12T21:17:31.573 回答