# include <iostream>
# include <map>
static std::map< int, std::string > map_sea = {
{ 0, "Winter" },
{ 1, "Spring" },
{ 2, "Summer" },
{ 3, "Autumn" }
};
enum Seasons {
Winter = 0,
Spring,
Summer,
Autumn,
};
class Year {
public:
Seasons sea;
Year() {}
void getSeason() {
std::cout << map_sea.at(sea) << std::endl;
}
void setSeason(Seasons s) {
sea = s;
}
};
int main()
{
int index;
Year y[4];
for (index = 0; index < 4; ++index) y[index].setSeason((Seasons)index);
for (index = 0; index < 4; ++index) y[index].getSeason();
return 0;
}
IyBpbmNsdWRlIDxpb3N0cmVhbT4KIyBpbmNsdWRlIDxtYXA+CgpzdGF0aWMgc3RkOjptYXA8IGludCwgc3RkOjpzdHJpbmcgPiBtYXBfc2VhID0gewoJeyAwLCAiV2ludGVyIiB9LAoJeyAxLCAiU3ByaW5nIiB9LAoJeyAyLCAiU3VtbWVyIiB9LAoJeyAzLCAiQXV0dW1uIiB9Cn07CgplbnVtIFNlYXNvbnMgewoJV2ludGVyID0gMCwKCVNwcmluZywKCVN1bW1lciwKCUF1dHVtbiwKfTsKCmNsYXNzIFllYXIgewpwdWJsaWM6CglTZWFzb25zIHNlYTsKICAgIFllYXIoKSAge30KICAgIAoJdm9pZCBnZXRTZWFzb24oKSB7CgkJc3RkOjpjb3V0IDw8IG1hcF9zZWEuYXQoc2VhKSA8PCBzdGQ6OmVuZGw7Cgl9Cgl2b2lkIHNldFNlYXNvbihTZWFzb25zIHMpIHsKCQlzZWEgPSBzOwoJfQp9OwoKaW50IG1haW4oKQp7CglpbnQgaW5kZXg7CglZZWFyIHlbNF07CgoJZm9yIChpbmRleCA9IDA7IGluZGV4IDwgNDsgKytpbmRleCkgeVtpbmRleF0uc2V0U2Vhc29uKChTZWFzb25zKWluZGV4KTsKCWZvciAoaW5kZXggPSAwOyBpbmRleCA8IDQ7ICsraW5kZXgpIHlbaW5kZXhdLmdldFNlYXNvbigpOwoKCXJldHVybiAwOwp9Cg==