| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2944 人关注过本帖
标题:[讨论]同济05级期末上机第二题
只看楼主 加入收藏
yelo20053533
Rank: 1
等 级:新手上路
帖 子:161
专家分:0
注 册:2006-11-27
收藏
得分:0 
呼唤高手
2006-12-11 19:36
stdio
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-1-22
收藏
得分:0 

输入回车结束输入 即最后一行什么都不输只敲回车

#include <iostream>
#include <algorithm>
#include <iterator>
#include <string>
#include <vector>
#include <sstream>
#include <numeric>

using namespace std;

class InputString
{
int key;
vector<int> data;
string tag;
void analyse(const string& s);
public:
InputString(const string& s) : key(0) { analyse(s); }
friend ostream& operator<<(ostream& os, const InputString& i)
{
os << '{' << i.key << '}';
copy(i.data.begin(), i.data.end(),
ostream_iterator<int>(os, " "));
return os;
}
friend bool operator<(const InputString& left,
const InputString& right)
{
return left.key > right.key;
}
};

void InputString::analyse(const string& s)
{
size_t i = s.find(']');
tag = s.substr(1, i - 1);
string number(s.begin() + i + 1, s.end());
stringstream ss;
ss << number;
while(ss) {
int a;
ss >> a;
data.push_back(a);
}
data.pop_back();
sort(data.begin(), data.end());
if(tag == "Max") key = data.back();
else if(tag == "Min") key = data.front();
else if(tag == "Median") key = (data.front() + data.back()) / 2;
else key = accumulate(data.begin(), data.end(), key) / data.size();
}

int main()
{
string input;
vector<InputString> vis;
while(1) {
getline(cin, input);
if(input.size() < 1) break;
vis.push_back(input);
}
sort(vis.begin(), vis.end());
copy(vis.begin(), vis.end(),
ostream_iterator<InputString>(cout, "\n"));
system("PAUSE");
}

[此贴子已经被作者于2006-12-12 11:02:49编辑过]

2006-12-12 10:58
stdio
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-1-22
收藏
得分:0 
以上为第二题

刚编的

在DEV-CPP中编译通过
2006-12-12 11:00
yelo20053533
Rank: 1
等 级:新手上路
帖 子:161
专家分:0
注 册:2006-11-27
收藏
得分:0 
谢谢,能用c编一下吗?
2006-12-12 12:04
stdio
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-1-22
收藏
得分:0 

楼主好像有好多题哦 都是从哪里搞得?

2006-12-12 15:48
yelo20053533
Rank: 1
等 级:新手上路
帖 子:161
专家分:0
注 册:2006-11-27
收藏
得分:0 
以下是引用stdio在2006-12-12 15:48:14的发言:

楼主好像有好多题哦 都是从哪里搞得?

校内OJ

2006-12-12 20:47
bit12110502
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-11-14
收藏
得分:0 
   同济的难题难倒不少人。。

2006-12-13 17:18
yelo20053533
Rank: 1
等 级:新手上路
帖 子:161
专家分:0
注 册:2006-11-27
收藏
得分:0 
大家加油
2006-12-13 17:22
yelo20053533
Rank: 1
等 级:新手上路
帖 子:161
专家分:0
注 册:2006-11-27
收藏
得分:0 
求助
2006-12-15 13:07
海天飞鸿
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-11-20
收藏
得分:0 
2006-12-15 14:44
快速回复:[讨论]同济05级期末上机第二题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023917 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved