2010-04-05 5 views
11

Кто-нибудь знает какие-либо сайты или книги, в которых есть проблемы, такие как python challenge, но для C++?python challenge, но для C++

Когда я думаю, что проблема с python, я не имею в виду только набор проблем, которые нужно решить с помощью C++ (для этого я мог бы, вероятно, использовать те же проблемы с задачей python), а скорее проблемы, которые, вероятно, будут лучше решены с использованием C++ STL, особенности языка и т. Д.

Например, существует одна задача python, специально разработанная, чтобы научить вас, как использовать pickle, сериализующую библиотеку для python.

До сих пор я знаю только проблемы программирования, но они также могут быть решены с помощью C, java или других языков.

ответ

3

Google Code Jam проблемы часто имеют анализы с фрагментами кода C++, возможно, потому, что C++ - это, безусловно, самый популярный язык, используемый для решения проблем с кодовым зазором. Последнее также позволяет вам хорошо использовать многие конструкторы C++, поскольку кодовое джем позволяет загружать решения всеми конкурентами. Поскольку большинство кодов - это C++, вы сможете узнать много хороших трюков C++ для эффективного кода.

4

Возможно, вы хотели бы взглянуть на статьи статей Herb Sutter's Guru of the Week.

1

Вам будет трудно найти, потому что C++ предоставляет вам меньше, чем любой другой доступный язык. Если C++ предоставляет его, он, вероятно, предоставляется Python или Java или C или любым другим языком программирования.

Почему бы не попробовать использовать некоторые понятия C++, такие как STL, чтобы решить проблемы Project Euler?

+0

Ударьте меня. +1 – wheaties

3

Есть еще много заданий на Rosetta Code, которые являются not implemented in C++. Попробуйте свои силы, особенно если вы можете использовать дополнительные функции (шаблоны, внешние библиотеки и т. Д.), Чтобы создать особенно приятное решение. Помните, что нет основополагающей причины, почему любой из этих задач должен быть выше языка C++, и, как правило, есть несколько других реализаций на других языках, чтобы показать вам другие способы попыток выполнить задачу, что может очень помочь.