C/C++

Член од
16 јуни 2022
Мислења
11
Поени од реакции
0
C++ е поефикасна и пофлексибилна верзија на програмскиот јазик C. C++ има низок степен на апстракција и се потпира на управувањето со човечката меморија. Тоа е лесен програмски јазик кој може да се користи за конструирање програми за различни платформи.
C е процедурален јазик, но C++ е објектно-ориентиран програмски јазик со неколку способности ексклузивни за C++. Бидејќи C++ се базира на C, има многу исти карактеристики како C и оние кои се супериорни во однос на C. Ако сакате да научите програмски јазик, погледнете на интернет, постојат различни бесплатни и платени ресурси, но јас ја наоѓам оваа веб-локација многу корисно бидејќи бесплатно го разгледува секој аспект од различните програмски јазици.
 

Maksimot

Психијатриски случај
Член од
28 јули 2021
Мислења
277
Поени од реакции
290
Разлика Во Висини
Помош?

Еве го и мојот код:
C++:
#include <bits/stdc++.h>
#define pb push_back
 
using namespace std;
 
int main()
{
    vector<long long int> drva;
    long long int prvaNula, poslednaNula;
    bool zaPrva = true;
    long long int i = 0;
    while(i < 1000000) {
        long long int a;
        cin>>a;
        if(a == 11111) break;
        else {
            if(a == 0 && zaPrva == true) {
                prvaNula = i;
                zaPrva = false;
            } else if(a == 0 && zaPrva == false) {
                poslednaNula = i;
            }
            drva.pb(a);
            i++;
        }
    }
 
    long long int najgolem = 0, najmal = 10000000;
 
    for(int i=prvaNula+1; i<=poslednaNula; i++) {
        if(drva[i] == 0) continue;
 
        if(drva[i] > najgolem) {
          long long int temp = najgolem;
          najgolem = drva[i];
          if(temp < najmal && temp != 0) najmal = temp;
        } else if(drva[i] < najmal) {
          najmal = drva[i];
        }
    }
    cout<<najgolem - najmal;
    return 0;
}
 
Член од
21 март 2014
Мислења
523
Поени од реакции
385
Разлика Во Висини
Помош?

Еве го и мојот код:
C++:
#include <bits/stdc++.h>
#define pb push_back

using namespace std;

int main()
{
    vector<long long int> drva;
    long long int prvaNula, poslednaNula;
    bool zaPrva = true;
    long long int i = 0;
    while(i < 1000000) {
        long long int a;
        cin>>a;
        if(a == 11111) break;
        else {
            if(a == 0 && zaPrva == true) {
                prvaNula = i;
                zaPrva = false;
            } else if(a == 0 && zaPrva == false) {
                poslednaNula = i;
            }
            drva.pb(a);
            i++;
        }
    }

    long long int najgolem = 0, najmal = 10000000;

    for(int i=prvaNula+1; i<=poslednaNula; i++) {
        if(drva[i] == 0) continue;

        if(drva[i] > najgolem) {
          long long int temp = najgolem;
          najgolem = drva[i];
          if(temp < najmal && temp != 0) najmal = temp;
        } else if(drva[i] < najmal) {
          najmal = drva[i];
        }
    }
    cout<<najgolem - najmal;
    return 0;
}
Неколку работи, немаш потреба од long long, бидејќи влезот е помеѓу 600-6000, else после break не ти треба, исто така не ти треба секој влез туку најголемиот или најмалиот во момент кога ќе ја најдеш последната нула. Бидејќи не се знае каде се наоѓа последната нула, ти можеш да наоѓаш за секоја следна нула после првата кој е најдобриот резултат, бидејќи пред секоја следна нова нула ако најдеш подобар минимум или подобар максимум, кога ќе дојдеш на таа нула потенцијално ќе имаш подобар резултат од резултатот кој го чуваш до претходната нула, и на тој начин ти се повторува под-проблемот.

C++:
#include <iostream>

using namespace std;

int main(){
    int input, maximum = 599, minimum = 6001;
    bool isInside = false;
    int bestDifference = -1;
    do{
        cin >> input;
        if(input == 0 && !isInside) { isInside = true; continue;}
        if(!isInside) continue;
        if(input != 0 && input>maximum) maximum = input;
        if(input != 0 && input<minimum) minimum = input;
        if(input == 0 && isInside) // zamisli deka ova e poslednata nula, togash do tuka vazhat max i min
            bestDifference = max(bestDifference, maximum-minimum); // dali noviot max-min e podobar od momentalniot max-min?
    }while(input!=11111);
    cout << bestDifference;
}
 
Член од
16 јуни 2022
Мислења
11
Поени од реакции
0
Разлика Во Висини
Помош?

Еве го и мојот код:
C++:
#include <bits/stdc++.h>
#define pb push_back

using namespace std;

int main()
{
    vector<long long int> drva;
    long long int prvaNula, poslednaNula;
    bool zaPrva = true;
    long long int i = 0;
    while(i < 1000000) {
        long long int a;
        cin>>a;
        if(a == 11111) break;
        else {
            if(a == 0 && zaPrva == true) {
                prvaNula = i;
                zaPrva = false;
            } else if(a == 0 && zaPrva == false) {
                poslednaNula = i;
            }
            drva.pb(a);
            i++;
        }
    }

    long long int najgolem = 0, najmal = 10000000;

    for(int i=prvaNula+1; i<=poslednaNula; i++) {
        if(drva[i] == 0) continue;

        if(drva[i] > najgolem) {
          long long int temp = najgolem;
          najgolem = drva[i];
          if(temp < najmal && temp != 0) najmal = temp;
        } else if(drva[i] < najmal) {
          najmal = drva[i];
        }
    }
    cout<<najgolem - najmal;
    return 0;
}
благодарам! Одвоив време и ми објаснив, но проблемот се реши.
 
Член од
14 јануари 2023
Мислења
3
Поени од реакции
0
Pomos
Shanon fano code for data compression c++
 
Член од
12 март 2009
Мислења
20.173
Поени од реакции
16.304
C++ е поефикасна и пофлексибилна верзија на програмскиот јазик C. C++ има низок степен на апстракција и се потпира на управувањето со човечката меморија. Тоа е лесен програмски јазик кој може да се користи за конструирање програми за различни платформи.
C е процедурален јазик, но C++ е објектно-ориентиран програмски јазик со неколку способности ексклузивни за C++. Бидејќи C++ се базира на C, има многу исти карактеристики како C и оние кои се супериорни во однос на C. Ако сакате да научите програмски јазик, погледнете на интернет, постојат различни бесплатни и платени ресурси, но јас ја наоѓам оваа веб-локација многу корисно бидејќи бесплатно го разгледува секој аспект од различните програмски јазици.
ова С++ е тоа што во 7Мо го учат децата ???
 
Последно уредено:
D

Diferans

Гостин
ова С++ е тоа што во 7Мо го учат децата ???
Засега ДА :). Син ми, 7 одд. завчера дојде дома и рече дека искомпајлирале C++ програмче по информатика. Којзнае, можеби е само показна вежба, инаку преамбициозно е да започнат со него.
 
Член од
12 март 2009
Мислења
20.173
Поени од реакции
16.304
Засега ДА . Син ми, 7 одд. завчера дојде дома и рече дека искомпајлирале C++ програмче по информатика. Којзнае, можеби е само показна вежба, инаку преамбициозно е да започнат со него.:)
Имам внук 5то, па онака се интересирав за да видам далим може да се спремам за да му помагам, но С++ е тешко за мене, јас сум онаа генерација од 70тите кога на факултет се учеше Фортран, ама мојата насока немааше, немавме термин..подоцна можеби прв во Скопје имав Синклер програмабилен дигитрон и 80тите ЗХ80, потоа Спектрум, па Амига итн, а имав сопствени технички програми во QBasic, користев на работа...имав и супер математичко програмче за генерирање прости броеви, само сега ништо од тоа не е Виндовс компатибилно, ниту ехе верзиите, се треба со компајлери..
Туку на времето имаше Компајлер кој од QBasic програмот вадеше Алгоритам, мислам тоа е најважно за децата, ќе се обидам пак да го најдам такво нешто ако постои..
 
D

Diferans

Гостин
Имам внук 5то, па онака се интересирав за да видам далим може да се спремам за да му помагам, но С++ е тешко за мене, јас сум онаа генерација од 70тите кога на факултет се учеше Фортран,
Како што им го гледам учебникот, само неколку часа ќе се на c++, и тоа основни поими, како променливи, аритметички искази, влез / излез. Потоа преминуваат на креирање на блог. Туку што ќе прајме кога ќе дојдат до темата форуми...
 

Kajgana Shop

На врв Bottom