Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
0.5s
Giới hạn bộ nhớ:
256M
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift
Cho 3 số ~A, B, C~ hãy tính tổng sau:
$$\sum_{i=1}^{A} \sum_{j=1}^{B} \sum_{k=1}^{C} ijk$$
Kết quả thu được chia lấy phần dư cho ~998244353~ .
Bạn phải trả lời ~T~ test case có trong bài.
Input
- Dòng thứ nhất gồm 1 số nguyên ~T~
- ~T~ dòng tiếp theo, mỗi dòng chứa 3 số ~A, B, C~.
Biết rằng
- ~1 \leq T \leq 10^5~
- ~1 \leq A, B, C \leq 10^9~
Output
- Gồm ~T~ dòng, mỗi dòng chưa 1 số nguyên là kết quả của phép tính trên sau khi chia lấy phần dư cho ~998244353~.
Sample
Input #1
2
1 2 3
1000000000 987654321 123456789
Output #1
18
951633476
Bình luận
thấy có ích thì upvote cho mình nhé
Bạn giải thích được không
include<bits/stdc++.h>
using namespace std; int main(){ iosbase::syncwith_stdio(false); cin.tie(NULL); cout.tie(NULL); int t; long long a,b,c; long long mod=998244353; cin>>t; while(t--){ cin>>a>>b>>c; long long x=(a(a+1)/2)%mod; long long y=(b(b+1)/2)%mod; long long z=(c(c+1)/2)%mod; cout<<(((xy)%mod)*z)%mod; cout<<'\n';
}
mod nhiều lần sẽ tránh được lỗi tràn số.
Tổng xich-ma trên thực tế = (1 + 2 + ... A) * (1 + 2 + ... + B) * (1 + 2 + ... + C)
Sử dụng công thức tính nhanh 1 + 2 + ... + n = (n + 1) * n / 2 sẽ ra kết quả
CƯỜNG GIẢ HỌ ĐINH. VẠN CỔ TỐI CƯỜNG
Chú ý chia dư để ra kết quả chính xác
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
thì không tự đi nghiên cứu đi=)))
//xoá comment
ai có ý tưởng không ạ.mình toàn bị TLE