Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Абстрактный тип данных
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Цитата p1ka4y777:
сначала опишите, пожалуйста, алгоритм и тогда я попробую скинуть свои наработки. »
p1ka4y777, лично мне не понятна эта последовательность действий. Я рассчитывал что смогу помочь тебе самостоятельно решить эту задачу, задавая наводящие вопросы. Делаю вывод, что наработок у тебя нет, и решать задачу ты не хочешь.

Возможны два разных подхода: (у тебя есть шанс реабилитироваться, если ты расскажешь, какой принцип заложен в каждый из них)
Код: Выделить весь код
#include <iostream>
#include <iomanip>
#include <string>
#include <map>
using namespace std;

int main() {
	typedef map<long, bool> by_area;
	typedef map<string, by_area> figure_by_name;
	figure_by_name database;
	string name;
	long size;
	
	while(cin >> name >> size) {
		database[name][size];
	}
	
	for(figure_by_name::iterator fig=database.begin(), efig=database.end(); fig!=efig; ) {
		--efig;
		cout << efig->first << ":\n";
		for(by_area::iterator area=efig->second.begin(), earea=efig->second.end(); area!=earea; ++area) {
			cout << "  " << area->first << "\n";
		}
	}
}
Код: Выделить весь код
#include <iostream>
#include <iomanip>
#include <string>
#include <list>
using namespace std;

typedef pair<string,long> data_type;
typedef list<data_type> figure_list;

inline bool figure_order(data_type const &a, data_type const &b) {
	return a.first > b.first || (a.first == b.first && a.second < b.second);
}

int main() {
	figure_list figures;
	data_type sample;
	
	while(cin >> sample.first >> sample.second) {
		figures.push_back(sample);
	}
	
	figures.sort(figure_order);
	
	for(figure_list::iterator fig=figures.begin(), efig=figures.end(); fig!=efig; ++fig) {
		cout << fig->first << ": " << fig->second << "\n";
	}
}
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:08, 10-11-2013 | #7

Название темы: Абстрактный тип данных