t = int(input())
for _ in range(t):
[l, r] = list(map(int, input().split()))
a = (r-l+1)//2
res = (2*(l%2)-1)*a
if (r-l+1)%2==1:
res += r*((-1)**r)
print(res)
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define endl '\n'
#define debug(n) cout<<(n)<<endl;
const ll INF = 2e18 + 99;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t;
cin>>t;
long long l, r;
while(t--){
cin>>l>>r;
long long odd_l, odd_r;
l--;
if(l % 2 == 0){
odd_l = l/2 * l/2;
}
else{
odd_l = (l/2 + 1) * (l/2 + 1);
}
long long even_l = l/2 * (l/2 + 1);
if(r % 2 == 0){
odd_r = r/2 * r/2;
}
else{
odd_r = (r/2 + 1) * (r/2 + 1);
}
long long even_r = r/2 * (r/2 + 1);
long long even_s = even_r - even_l;
long long odd_s = odd_r - odd_l;
cout<<(even_s - odd_s)<<"\n";
}
return 0;
}
90. Subsets II | 1560A - Dislike of Threes |
36. Valid Sudoku | 557. Reverse Words in a String III |
566. Reshape the Matrix | 167. Two Sum II - Input array is sorted |
387. First Unique Character in a String | 383. Ransom Note |
242. Valid Anagram | 141. Linked List Cycle |
21. Merge Two Sorted Lists | 203. Remove Linked List Elements |
733. Flood Fill | 206. Reverse Linked List |
83. Remove Duplicates from Sorted List | 116. Populating Next Right Pointers in Each Node |
145. Binary Tree Postorder Traversal | 94. Binary Tree Inorder Traversal |
101. Symmetric Tree | 77. Combinations |
46. Permutations | 226. Invert Binary Tree |
112. Path Sum | 1556A - A Variety of Operations |
136. Single Number | 169. Majority Element |
119. Pascal's Triangle II | 409. Longest Palindrome |
1574A - Regular Bracket Sequences | 1574B - Combinatorics Homework |