Форум программистов, компьютерный форум CyberForum.ru

Куски и ограниченные куски - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ считывание строки( библиотека string) http://www.cyberforum.ru/cpp-beginners/thread1085219.html
задача в том чтоб считать сообщение с клавиатуры полностью(русские буквы пробелы знаки всякие). Пытался сделать с помощью string, не получилось, в переменную записывается все только до первого пробела. Вроде вопрос глупый но придумать не могу, есть какие идеи?
C++ Создать функции добавления подстроки и удаления подстроки Написать в программе функции добавления подстроки и удаления подстроки в любом месте данного рядка. http://www.cyberforum.ru/cpp-beginners/thread1085200.html
C++ Не могу разобраться с программой в С++
Написала программку на С++, он ее запускает и как я понимаю выполняет, но вот результатов я не вижу( И вот что мне выдает сама программа: "Cpc.exe" (Win32). Загружено "D:\Documents\Visual Studio 2012\Projects\Cpc\Debug\Cpc.exe". Символы загружены. "Cpc.exe" (Win32). Загружено "C:\Windows\System32\ntdll.dll". Невозможно найти или открыть файл PDB. "Cpc.exe" (Win32). Загружено...
Как освободить память в двумерном массиве в столбцах C++
скажем так, чтобы освободить строку я пишу int **b; // // инициализирю массив delete b; // удаляю указатель(массив) в 3 позиции а как освободить память в вертикальных столбцах? думал что можно так
C++ Не осуществляется поиск по массиву http://www.cyberforum.ru/cpp-beginners/thread1085145.html
Программа не выводит на экран имена и фамилии людей, а просто выдает конечный результат "Lyudi s takiv imenem ne naydeni". Это значит что k всегда равно 0, что делать помогите! #include<iostream> #include<stdio.h> #include<math.h> #include<string.h> #define n 10 // количество элементов в массие using namespace std; struct fio{ // наша структура char fam; // фамилия
C++ Дан массив целых чисел. Верно ли, что все элементы в нем упорядочены пл убыванию Плиз напишите программу !!!! Дан массив целых чисел. Верно ли, что все элементы в нем упорядочены по убыванию подробнее

Показать сообщение отдельно
Warezovvv
 Аватар для Warezovvv
9 / 9 / 2
Регистрация: 09.12.2012
Сообщений: 219
30.01.2014, 12:13     Куски и ограниченные куски
Есть задание :
An integer K and a non-empty zero-indexed array A consisting of N integers are given.
A pair of integers (P, Q), such that 0 ≤ P ≤ Q < N, is called a slice of array A.
A bounded_slice is a slice in which the difference between the maximum and minimum values in the slice is less than or equal to K. More precisely it is a slice, such that max(A[P], A[P + 1], ..., A[Q]) − min(A[P], A[P + 1], ..., A[Q]) ≤ K.
The goal is to calculate the number of bounded_slices.
For example, consider K = 2 and array A such that:
A[0] = 3
A[1] = 5
A[2] = 7
A[3] = 6
A[4] = 3
There are exactly nine bounded_slices: (0, 0), (0, 1), (1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3), (4, 4).
Write a function:
int solution(int K, int A[], int N);
that, given an integer K and a non-empty zero-indexed array A of N integers, returns the number of bounded_slices of array A.
If the number of bounded_slices is greater than 1,000,000,000, the function should return 1,000,000,000.
For example, given:
A[0] = 3
A[1] = 5
A[2] = 7
A[3] = 6
A[4] = 3
the function should return 9, as explained above.
Assume that:
N is an integer within the range [1..100,000];
K is an integer within the range [0..1,000,000,000];
each element of array A is an integer within the range [−1,000,000,000..1,000,000,000].
Complexity:
expected worst-case time complexity is O(N);
expected worst-case space complexity is O(N), beyond input storage (not counting the storage required for input arguments).
Elements of input arrays can be modified.


Я написал к нему код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <vector>
#include <iostream>
using namespace std;
int solution(int K, vector<int> &A) {
    int P;
    int Q;
    int countSlices=0;
    for(int min=0;min<A.size();min++){
        for(int max=min;max<A.size();max++){
            P=min;
            Q=max;
            if(A[Q]-A[P]<=K&&max-min<K){
                countSlices++;          
            }
            else{
                break;
            }       
        }
    }   
    cout<<countSlices;
    return countSlices;
}
int main(){
    vector<int> v;
    //6, [4, 5, 8, 5, 1, 4, 6, 8, 7, 2, 2, 5
    v.push_back(6);
    v.push_back(5);
    v.push_back(8);
    v.push_back(5);
    v.push_back(1);
    v.push_back(4);
    v.push_back(6);
    v.push_back(8);
    v.push_back(7);
    v.push_back(2);
    v.push_back(2);
    v.push_back(5);
    int K=2;
    solution(K,v);
    system("pause");
    
}
Входные данные из примера работают правильно а из других тестов неправильно.
И мне кажется я не понял задание.
Можете подсказать что не так с функцией?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru