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

Program nie przechodzi ostatniego testu.

Cloud VPS
0 głosów
287 wizyt
pytanie zadane 10 lipca 2022 w C i C++ przez Latarnik Użytkownik (650 p.)

Dzień dobry, próbowałem zrobić zadanie trójkąty jednobarwne ze szkopułu. link:https://szkopul.edu.pl/problemset/problem/UU2Uj-barjiONnRxd9aEVoDj/site/?key=statement

Prawie mi się udało jednak program nie przechodzi ostatniego testu czasowo i mam prośbę czy mógłby ktoś pomóc w skróceniu tego kodu aby przechodził też ostatni test ?

#include <iostream>
 
 using namespace std;
 
 int main()
 {
 	int n, m,a,b;
 	cin>>n>>m;
 	int tablica[n+1];
 	for(int i = 0; i <n+1;i++)
 	{
 	tablica[i] = 0;	
	}
 	for(int i = 0; i <m;i++)
 	{
 		cin>>a>>b;
 		tablica[a] = tablica[a]+1;
 		tablica[b] = tablica[b]+1;
	}
	a = 0;
	a = n*(n-1)*(n-2);
	a = a/6;
	b=0;
	for(int i = 0; i <n+1;i++)
 	{
 		b = b +  (tablica[i]*(n-1-tablica[i]));
 		
 	}
 	
 	b = b/2;
 	
 	cout<<a - b<<endl;
	
 	return 0;
 }

Program robiłem z pomocą wzoru matematycznego na ilość kombinacji. czyli   n! / k! * (n-k)!

oraz wykorzystałem to, że każdy trójkąt różnobarwny musi mieć dwa różnokolorowe boki wychodzące z jednego trójkąta i muszą być koło siebie. Najpierw obliczyłem różnokolorowe i potem odjąłęm je od wszystkich trójkątów.

 

komentarz 10 lipca 2022 przez manjaro Nałogowiec (37,390 p.)
Co to znaczy żę muszą koło siebie? Punkty nie są współliniowe więc nie ma znaczenia gdzie się one znajdują...

1 odpowiedź

+1 głos
odpowiedź 11 lipca 2022 przez Whistleroosh Maniak (57,400 p.)

Dodaj na początek kodu te linijki:

ios_base::sync_with_stdio(false);
cin.tie(nullptr);

A tu jest wytłumaczone co robią

Podobne pytania

0 głosów
0 odpowiedzi 94 wizyt
pytanie zadane 8 lipca 2024 w C i C++ przez Szyszka Gaduła (3,510 p.)
0 głosów
0 odpowiedzi 345 wizyt
pytanie zadane 26 kwietnia 2022 w C i C++ przez Latarnik Użytkownik (650 p.)
0 głosów
1 odpowiedź 159 wizyt
pytanie zadane 12 września 2023 w C i C++ przez Sophix Początkujący (270 p.)

93,483 zapytań

142,417 odpowiedzi

322,763 komentarzy

62,895 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...