【发布时间】:2015-05-03 22:07:02
【问题描述】:
抱歉,标题令人困惑,不知道如何措辞。
基本上,我有一个充满结构的向量,其中包含一些参加某项运动决赛的球队的一些信息。结构如下:
struct Year{
string year;
string host;
string winner;
string score;
string runnerUp;
};
我已经用文件中的信息填充了向量,并想知道每支球队在决赛中打了多少次。这意味着我需要计算每支球队获得冠军或获得亚军的次数。执行此操作的相当简单的方法是什么?
作为参考,该文件如下所示:
Year Host Winner Score Runner-up
1936 Germany United States 19-8 Canada
1948 United Kingdom United States 65-21 France
1952 Finland United States 36-25 Soviet Union
1956 Australia United States 89-55 Soviet Union
1960 Italy United States No playoffs Soviet Union
1964 Japan United States 73-59 Soviet Union
1968 Mexico United States 65-50 Yugoslavia
1972 West Germany Soviet Union 51-50 United States
1976 Canada United States 95-74 Yugoslavia
1980 Soviet Union Yugoslavia 86-77 Italy
1984 United States United States 96-65 Spain
1988 South Korea Soviet Union 76-63 Yugoslavia
1992 Spain United States 117-85 Croatia
1996 United States United States 95-69 Yugoslavia
2000 Australia United States 85-75 France
2004 Greece Argentina 84-69 Italy
2008 China United States 118-107 Spain
2012 United Kingdom United States 107-100 Spain
假设向量已正确填充
【问题讨论】:
-
好吧,你需要一个循环。你试过什么?
-
我还没有尝试太多,不知道从哪里开始。问题是我需要保持一切都非常通用,以便它可以处理多个文件。我考虑过创建另一个保存计数的向量,但我不确定如何在保持正确排序的同时实现它。
-
@Greesy "假设向量已正确填充" 您的第一个障碍从这里开始:stackoverflow.com/questions/23047052/…,我强烈建议您在输入文件中引入一些合理的分隔符格式。
-
@πάντα ῥεῖ 它们用 '\t' 分隔。我没有创建文件,我只需要使用它。我已经创建了向量,并且在此之前已经将它用于一些事情。
标签: c++ vector struct ifstream