С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Определить, является ли билет счастливым с помощью рекурсии - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Приведение любого двумерного массива к типу указатель на указатель http://www.cyberforum.ru/cpp-beginners/thread1227171.html
Допустим, есть несколько массивов int arr1; int arr2; int arr3; Какое преобразование нужно сделать, чтобы подобные присвоения были допустимыми? int** arrPtr = 0;
C++ Конфликт имен в библиотеках Здравствуйте. Возникла проблема при одновременном подключении #include <X11/extensions/xf86vmode.h> и #include "FreeImage.h" Код ошибки: In file included from GUIImageManager.h:13:0, ... http://www.cyberforum.ru/cpp-beginners/thread1227155.html
C++ Найти среднее арифметическое двух диагоналей массива
Сложная задачка разобраться не могу! ну нада чтобы была формула вычисления а не тупо добавить диагонали и пощитать размер массива может быть любой! Помогите пожалуйста
Как подключить GDI+ в Code::Blocks? C++
Здравствуйте. Пытаюсь работать с графикой в Code::Blocks, но, найти GDI+ не удалось: т.е. ни библиотек, ни заголовочных файлов там нет.Откуда их можно скачать/установить? в интернете есть 2-3...
C++ Управляемый препроцессинг http://www.cyberforum.ru/cpp-beginners/thread1227058.html
Наверняка промахнусь разделом, так что переместите пожалуйста если есть более подходящий.Суть вопроса такова: есть условный исходник, который участвует в сборке под несколько осей и несколько типов...
C++ Программа должна удалять из строки все символы, что стоят на чётных местах после буквы "а" Программа должна удалять из строки все символы, что стоят на чётных местах после буквы "а". Сделал программу которая это делает, но только с латиницей. Как сюда подключить кириллицу?... подробнее

Показать сообщение отдельно
Voivoid
675 / 278 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.07.2014, 20:45
Цитата Сообщение от ValeryS Посмотреть сообщение
ну как то так
Жестяной алгоритм Он кстати по-моему неправильно работает, если я конечно не путаю как считается счастливый билет. Скажем 111003 же счатливый?

Мой вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cassert>
#include <iostream>
 
int is_lucky_helper( int a_num, int sum ) {
  return a_num == 0 ? sum : is_lucky_helper( a_num / 10, sum + ( a_num % 10 ) );
}
 
bool is_lucky( int a_num ) {
  assert( a_num >= 0 && a_num <= 999999 );
 
  int left = is_lucky_helper( a_num / 1000, 0 );
  int right = is_lucky_helper( a_num % 1000, 0 );
 
  return left == right;
}
 
int main() {
 
  static const int n = 111003;
  std::cout << n << " is " << ( is_lucky( n ) ? "lucky" : "not lucky" ) << "\n";
 
  return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.