C++ zadaci,resenja,pitanja,tutoriali

Па буди јасан око задатка. Можемо рачунати типа 1,1,10,20,10,7,8 и ја ти кажем да имамо 2 дупликата. То ради мој задатак. Ја сам мислио да то хоћеш.
Ja sam prosto prekopirao zadatak, ***** se s njim sat vremena :D Dobro je i ovo, hvala u svakom slucaju
 
Kod:
#include <algorithm>
#include <vector>
#include <iostream>

int main() {
    std::vector<int> v = { 3,3,10,3,10,2,4,2,5,2 };
    std::sort(v.begin(),v.end());
    for (auto i=v.begin(),j=i+1; i!=v.end() && j!=v.end();i=j+1) {
        int count=0;
        while (*i == *j){
            ++j;
            ++count;
        }
        if (count>0)std::cout << *i << std::endl; //duplon
        if (count == 0)++j;
    }
}
Evo ti. fora je samo u sortu. Tvoj zadatak je da ispises total broj umesto svaki duplikat :P
 
Имаш могућност за задатак да ти нађе колико је дупликата типа: 1,1,10,10. И онда испада 4. Али ако си тражио само број дупликата, онда је оно што сам заковао.
To su u svakom slučaju DVA duplikata? Koja 'budala' će pod duplikat da broji 'original' od duplikata?
 
Kod:
#include <algorithm>
#include <vector>
#include <iostream>

int main() {
    std::vector<int> v = { 3,3,10,3,10,2,4,2,5,2 };
    std::sort(v.begin(),v.end());
    for (auto i=v.begin(),j=i+1; i!=v.end() && j!=v.end();i=j+1) {
        int count=0;
        while (*i == *j){
            ++j;
            ++count;
        }
        if (count>0)std::cout << *i << std::endl; //duplon
        if (count == 0)++j;
    }
}
Evo ti. fora je samo u sortu. Tvoj zadatak je da ispises total broj umesto svaki duplikat :P
Братеее, па хајде уништи му живот. Он не зна шта је break (није срамота), а ти му дајеш векторе.
 
To su u svakom slučaju DVA duplikata? Koja 'budala' će pod duplikat da broji 'original' od duplikata?
Кажем, зависи шта задатак тражи. Поента програмирања је да урадиш оно што се тражи од тебе. А не шта је логично. Ако бих ја теби тражио да ми урадиш тако задатак, ти би урадио то. Зар не?
 
Bolje da pocne od vektora jer C nizovi su katastrofa za pocetnike. To ukoliko hoce da uci C++. Nek mu onda bude
zadatak da C++ vektor zameni nizom ;P
Разумем ја тебе, али нека уради овако просто. Петље су лаганица. Мало да увежба то. Ако му даш векторе као да си му рекао: Хајде направи програм за шах.
 
Кажем, зависи шта задатак тражи. Поента програмирања је да урадиш оно што се тражи од тебе. А не шта је логично. Ако бих ја теби тражио да ми урадиш тако задатак, ти би урадио то. Зар не?
U C++ sigurno NE! Osim toga, ponekad je veća gnjavaža opisati šta treba da uradi zadatak, nego da napišeš program za to! Ovde smo recimo zapeli oko pojma 'duplikat'....
 
U C++ sigurno NE! Osim toga, ponekad je veća gnjavaža opisati šta treba da uradi zadatak, nego da napišeš program za to! Ovde smo recimo zapeli oko pojma 'duplikat'....
Па зато ја мрзим те питалице. Нису најјасније. Лако је накуцати код. Али тешко је укапирати шта хоће од мене уопште.
 
Nacin na koji je zadatak resen na sajtu izgleda ovako... Ovde mi nije jasno zbog cega se koristi treci niz(arr3) i ceo treci ciklus u sustini... Pa ako iko ima slobodnog vremena... bilo bi mi korisno da razumem ovo :D
 

Prilozi

  • Annotation 2020-07-24 195443.png
    Annotation 2020-07-24 195443.png
    62,1 KB · Pregleda: 10
Nacin na koji je zadatak resen na sajtu izgleda ovako... Ovde mi nije jasno zbog cega se koristi treci niz(arr3) i ceo treci ciklus u sustini... Pa ako iko ima slobodnog vremena... bilo bi mi korisno da razumem ovo :D
Тај је закомпликовао себи живот. Он је копирао низ у низ два, а у трећи низ оставио само нуле. И онда је пролазио кроз други низ који је копија првог и тражио где се јављају исти елементи. И када се јаве, у трећем низу додати број дупликата. Ово је хаос хД
 
Nacin na koji je zadatak resen na sajtu izgleda ovako... Ovde mi nije jasno zbog cega se koristi treci niz(arr3) i ceo treci ciklus u sustini... Pa ako iko ima slobodnog vremena... bilo bi mi korisno da razumem ovo :D
Ispravno je resenje zato sto upisuje u treci niz 1..n po indeksima elemenata koji se poklapaju gde je n broj ponavljanja.
Kako je 2 dovoljno da postoji kao minimum ponavljanja dovoljno je samo ispitati na 2 a ne na 3,4 5 i vise.

edit:
no i ovaj program je generalno neispravan zato sto ne proverava korektnost ulaza a to je vaznije za profesionalno
programiranje od samog problema...
 
Ispravno je resenje zato sto upisuje u treci niz 1..n po indeksima elemenata koji se poklapaju gde je n broj ponavljanja.
Kako je 2 dovoljno da postoji kao minimum ponavljanja dovoljno je samo ispitati na 2 a ne na 3,4 5 i vise.

edit:
no i ovaj program je generalno neispravan zato sto ne proverava korektnost ulaza a to je vaznije za profesionalno
programiranje od samog problema...
Uzmimo niz: 1, 2, 1, 1, 1, 3, 1, 1, 2, 2, 1. Koliko je tu duplikata?
 

Back
Top