• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SPOJ - Dwie cyfry silnii.

0 głosów
106 wizyt
pytanie zadane 5 lutego 2020 w C i C++ przez Mati Antoniewicz Nowicjusz (120 p.)

Witam, napisałem poprawny kod, ale przekracza on limit czasu. Zapoznałem się z poprzednimi wątkami, ale nie dały one wystarczającego efektu. Co mógłbym poprawić?

PS Proszę o nie wskazywanie innych wątków, chyba że jest w nich coś czego na pierwszy rzut oka nie zauważyłem.

#include <iostream>

using namespace std;

int silnia (int l)
{
    if(l==1) return 1;
    else return l*silnia(l-1);
}
int main()
{
    int t;
    cin >> t;

    for (int i=0; i<t; i++)
    {
       int l;
       cin >> l;
       if (l<10)
       {
           cout << silnia(l)/10%10 << " " << silnia(l)%10 << endl;

       }
       else cout << "0 0" << endl;
    }

    return 0;
}

 

1 odpowiedź

0 głosów
odpowiedź 5 lutego 2020 przez Mariusz M Obywatel (1,360 p.)
edycja 5 lutego 2020 przez Mariusz M




switch(n)
{
    case 0,1:
     {
           cout<<"01"<<endl;
           break;
     }
     case 2:
     {
           cout<<"02"<<endl;
           break;
     } 
      case 3:
     {
           cout<<"06"<<endl;
           break;
     } 
      case 4:
     {
           cout<<"24"<<endl;
           break;
     }
      case 5,6,8:
     {
           cout<<"20"<<endl;
           break;
     }
      case 7:
     {
           cout<<"40"<<endl;
           break;
     }
      case 9:
     {
           cout<<"80"<<endl;
           break;
     }
     default: 
           cout<<"00"<<endl;
}

Skoro pytają o dwie ostatnie cyfry to chyba najlepiej będzie skorzystać z instrukcji if  albo switch

Podobne pytania

0 głosów
2 odpowiedzi 287 wizyt
0 głosów
1 odpowiedź 227 wizyt
pytanie zadane 30 lipca 2017 w C i C++ przez Michał_Warmuz Mądrala (5,840 p.)
+1 głos
1 odpowiedź 249 wizyt
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.SPOJ

85,242 zapytań

134,056 odpowiedzi

297,247 komentarzy

56,332 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...