Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <list>
- #include <sstream>
- using namespace std;
- //9, 7, 72
- int main() {
- string input;
- getline(cin, input);
- int startNumber = 0;
- int d = 0;
- int numberToSearch = 0;
- int count = 0;
- for (int i = 0; i < input.size(); ++i) {
- string currentNumber = "";
- for (int j = i; j < input.size(); ++j) {
- if (isdigit(input.at(j))) {
- currentNumber += input.at(j);
- } else {
- i = j;
- break;
- }
- }
- if (!currentNumber.empty()) {
- if (count == 0) {
- startNumber = stoi(currentNumber);
- } else if (count == 1) {
- d = stoi(currentNumber);
- } else if (count == 2) {
- numberToSearch = stoi(currentNumber);
- }
- count++;
- }
- }
- string saveFirst = to_string(startNumber);
- int m = 0;
- int n = 1;
- int sum = 0;
- while (startNumber < numberToSearch) {
- if (sum == 0) {
- sum = startNumber + startNumber + d;
- startNumber += d;
- } else {
- int saveLast = sum;
- startNumber += d;
- sum = startNumber + saveLast;
- }
- string numberToString = to_string(startNumber);
- for (int i = 0; i < numberToString.size(); ++i) {
- for (int j = 0; j < saveFirst.size(); ++j) {
- if (numberToString.at(i) == saveFirst.at(j)) {
- m++;
- }
- }
- }
- n++;
- }
- sum -= startNumber;
- cout << "n = " << n << ", S = " << sum << ", m = " << m << endl;
- return 0;
- }
- // 10
- // 22 + 4
- // 26 + 4
- // 30 + 4
- // 34 + 4
- // 38 + 4
- // 42 + 4
- // 46 + 4
- // 50 + 4
- // 54 + 4
- //n = 9?? Примера е грешен...?
RAW Paste Data