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

C++, Zadanie MAIN2:dwa markety

Object Storage Arubacloud
0 głosów
398 wizyt
pytanie zadane 18 sierpnia 2021 w C i C++ przez Kamila2000 Nowicjusz (120 p.)

Witam, nie dawno zaczełam uczyć się programowania z kursem main2 i mam mały problem z zadaniem dwa markety. Przechodzi mi tylko część testów. Czy wie ktoś może gdzie popełniam błąd? Z góry dziękuje i pozdrawiam smiley

O to treść zadania i mój program:

 

Wstęp do programowania, lekcja 9. Dostępna pamięć: 256 MB.
Chcesz zrobić zakupy. Wiesz dokładnie, jakie produkty chcesz kupić. Sprawdziłeś już w Internecie ceny każdego
z produktów we wszystkich okolicznych marketach. Masz czas pojechać do co najwyżej dwóch marketów
i łącznie chcesz w nich kupić po jednym egzemplarzu każdego produktu. Jak to zrobić najtaniej?

Wejście
Pierwszy wiersz wejścia zawiera dwie liczby całkowite n oraz m (2 ≤ n, m ≤ 100) oddzielone spacją, oznaczające
liczbę marketów oraz liczbę produktów, które chcesz kupić. Każdy z kolejnych n wierszy zawiera po m liczb
całkowitych z zakresu od 1 do 1000. Pierwszy wiersz zawiera ceny kolejnych produktów w pierwszym markecie,
drugi – ceny kolejnych produktów w drugim markecie itd.

Wyjście
Twój program powinien wypisać jedną liczbę całkowitą: minimalny koszt zakupu wszystkich potrzebnych
produktów w co najwyżej dwóch marketach.

Przykład
Dla danych wejściowych:
3 4
7 3 7 9
2 20 10 6
8 8 8 8
poprawnym wynikiem jest:
18

Wyjaśnienie do przykładu: Najlepiej pojechać do pierwszego i drugiego marketu. W pierwszym kupujemy
drugi i trzeci produkt (koszt 3 + 7), a w drugim pierwszy i czwarty (koszt 2 + 6)

 


#include <iostream>
using namespace std;



void sortowanie_babelkowe(int tab[],int n)
{
	for(int i=0;i<n;i++)
		for(int j=1;j<n-i;j++) 
		if(tab[j-1]>tab[j])
		
			swap(tab[j-1], tab[j]);
}



void dod_tab(int sum[],int tab[101][101],int m,int k,int p)
{
	for(int i=0;i<m;i++)
	{
		sum[i]=tab[k][i];
	}
	  int i=0;
	for(int j=m;j<(m*2);j++)
	{ 
		sum[j]=tab[p][i];
		i++;
	}
	
}
int main() {
	
	  int n,m;
      cin>>n>>m;
      int tab[101][101];
      for(int i=0;i<n;i++)
      {
      	for(int j=0;j<m;j++)
      	{
      		cin>>tab[i][j];
      	}
      }
      
      
    int s[202]={0};
    int wyn1=0, wyn2=1000000;
   for(int i=0;i<n;i++)
   { 
   	
   	
   	for(int j=(i+1);j<n;j++)
   {	dod_tab(s,tab,m,i,j);
   
  
   	sortowanie_babelkowe(s,(m*2));
   
   	for(int e=0;e<m;e++)
   	{ 
   		wyn1=wyn1+s[e];
   	}
   	if(wyn1<wyn2 )
   	{
   		wyn2=wyn1;
   		
   		
   	}
   
   	
   	wyn1=0;
   }
   	
   	
   	
   }
   cout<<wyn2;
      
	return 0;
}

 

 

 

komentarz 18 sierpnia 2021 przez Whistleroosh Maniak (56,980 p.)
edycja 18 sierpnia 2021 przez Whistleroosh
Wydaję mi się, że źle zrozumiałaś treść zadania. Pierwszy element wiersza zawiera cenę produktu typu A, drugi cenę produktu typu B itd. W zadaniu masz kupić po jednym produkcie każdego typu. Teraz sortujesz te produkty i tracisz informację o tym, który jest jakiego typu
komentarz 20 sierpnia 2021 przez Kamila2000 Nowicjusz (120 p.)

Okay, teraz rozumiem. Dziękuje smiley

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 366 wizyt
pytanie zadane 27 lipca 2019 w C i C++ przez niezalogowany
+1 głos
1 odpowiedź 717 wizyt
pytanie zadane 15 grudnia 2017 w C i C++ przez Józef Niecierski Początkujący (440 p.)
+1 głos
1 odpowiedź 919 wizyt
pytanie zadane 19 maja 2018 w C i C++ przez koniak20 Początkujący (390 p.)

92,579 zapytań

141,429 odpowiedzi

319,657 komentarzy

61,963 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...