Informatică, întrebare adresată de lucamanea5, 8 ani în urmă

#include

using namespace std;
int multipli(int a,int b,int c)
{
int i,cnt;
for(i=a;i<=b;i++)
{
if(i%c==0)
cnt++;
}
return cnt;

}
Am pus aceasta problema pe Pbinfo și primesc doar 80 de puncte. Problema este numarul 70 FMultiplu. Ma poate ajuta cineva.


daniel22: iti ia prea mult timp, trebuie sa gasesti o solutie mai optima pentru 100 p

Răspunsuri la întrebare

Răspuns de lucaciucandrei
9

Solutia de 100 puncte!

int multipli(int a , int b , int c){

       while(a%c!=0) a++;

       while(b%c!=0) b--;

       return (b-a)/c + 1;

}

Tu parcurgi toate numerele si depasesti timpul pe anumite cazuri!

Alte întrebări interesante