Witam ponownie :)
Ten kod zalicza 8/11 testów. Gdybyście mogli znaleźć wyjątki, żebym mógł poprawić kod... :)
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
int main() {
int liczba, dzielnik, wynik=0;
cin >> liczba;
cin >> dzielnik;
for (int i=9; i!=0; i=i-1)
{
for (int k=9-i; k!=0; k=k-1)
{
int temp = pow(10, k);
int temp2= pow(10, i);
if (((liczba/temp)%temp2)%dzielnik==0)
{
wynik=((liczba/temp)%temp2);
break;
}
}
if (wynik!=0)
break;
}
if (wynik!=0)
cout << wynik;
else
cout << "NIE";
}
Na wejściu mamy dwie liczby, liczbę dziewięciocyfrową i dzielnik. Mamy znaleźć największy spójny ciąg cyfr tej liczby, który dzieli się przez podany dzielnik. Przykładowe wejście: 987654321 18, wyjście: 765432. Jeżeli taki ciąg nie istnieje, wypisujemy NIE. Dzięki!