Столкнувшись с проблемой переполнения в использовании длинного в C ++ [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Столкнувшись с проблемой переполнения в использовании длинного в C ++ [закрыто]

Сообщение Anonymous »

Я новичок в C ++, и не получаю того, как остановить переполнение. Диапазон sum
Вам дают диапазон, представленную двумя целыми числами l и r , и вы должны найти сумму чисел в диапазоне между l и r . /> input
Первая строка содержит число t (1 ≤ t ≤ 10⁵) - количество тестовых случаев. l , r (1 ≤ l , r ≤ 10⁹).
вывод
для каждого тестового случая, печать. /> Пример < /h6>

Код: Выделить всё

Input:
4
3 6
2 11
4 16
7 17
< /code>
Output:
18
65
130
132
< /code>
Вот мой код: < /p>
#include 

using namespace std;

int main(){
int t;
cin >> t;
while (t--)
{
long long l, r;

cin >> l >> r;
l--;
long long sum_r = r*1ll*(r+1)/2;
long long sum_l_minus_1 = l*1ll*(l+1)/2;
long long ans = sum_r - sum_l_minus_1;

cout 
Input

100000
641009859 54748096
75475634 804928248
476927808 284875072
503158867 627937890
322595515 786026685
645468307 669240390
939887597 588586447
973764525 521365644
710156469 985188306
860350786 11308832
784695957 770562147
208427221 35937909
67590963 726478310
475357775 255361535
135993561 166967811
46718075 851555000
704533750 788412453
946936715 234173340
706350235 771067386
254020497 988895277
16233727 99235830
208182535 612324591
714622972 51380687
591062856 873465325
43636289...
< /code>
Output

18242795931397643261
321106456990525715
18373590910392113216
70568574694012584
256885042171298100
15626682790307274
18178266729772613338
18108546466754646256
233136894755973225
18076706281500574639
18435753213215732548
18425668887256488901
261601098707629002
18366366323727214071
4692000789816186
361481670195783725
62613196324680456
18025818079775988831
47807130372867696
456693728609847747
4792108089473964
165800718842399091
18192721065535793038
206793187849503535
129683964060535770
...
< /code>
Answer

203948143007666310
321106456990525715
73153164079241280
70568574694012584
256885042171298100
15626682790307274
268477345465412322
338197608450035529
233136894755973225
370037793080636595
10990862049077172
21075186697427845
261601098707629002
80377750713056855
4692000789816186
361481670195783725
62613196324680456
420925995114672840
47807130372867696
456693728609847747
4792108089473964
165800718842399091
254023008939762237
206793187849503535
129683964060535770
125678814334883849
172...
Я также пытался использовать Unsigned Long Long, но все еще дает ошибку


Подробнее здесь: https://stackoverflow.com/questions/796 ... -long-in-c
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Столкнувшись с проблемой переполнения в использовании длинного в C ++ [закрыто]
    Anonymous » » в форуме C++
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Столкнувшись с проблемой переполнения при использовании длинного в C ++
    Anonymous » » в форуме C++
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Столкнувшись с проблемой переполнения при использовании длинного в C ++
    Anonymous » » в форуме C++
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Столкнувшись с проблемой переполнения при использовании длинного в C ++
    Anonymous » » в форуме C++
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Столкнувшись с проблемой переполнения при использовании длинного в C ++
    Anonymous » » в форуме C++
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»