Điểm:
200
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Tôi nghĩ là ra BT khó quá thì các bạn sẽ ý kiến ý cò. Vì thế chúng ta sẽ cùng thư giãn bằng bài toán sau.
Cho ba số nguyên dương \(a,b,c\), với \(1 < a,b,c \le 10^{18}\). Tính \({a^{b}}^c\) mod \(3\).
Làm 1 câu như vậy thì không thư giãn lắm nên chúng ta sẽ làm tầm 100 câu như thế. Chúc các bạn vui vẻ!
Input
- Gồm 100 dòng chứa 100 câu hỏi, mỗi dòng gồm 3 số \(a,b,c\)
Output
- Gồm 100 dòng chứa đáp án cho 100 câu.
Bình luận
Ai xem lại test hộ tôi cái (Ví dụ như truy vấn thứ 3 của test đầu)
\(a=406859826201904955\)
\(b=878154055165301931\)
\(c=773734380604007182\)
Do \(a\) chia \(3\) dư \(2\), \(b\) chia \(2\) dư \(1\) và \(c\) chia \(2\) dư \(0\) thì kết quả phải là \(1\) chứ ạ? Sao lại là \(2\) vậy? (Ko biết tui làm sai ở đâu ko nữa)
Bạn phân tích đúng rồi nhưng kết quả là \(2\) chứ. Ví dụ số \(2^1\) hoặc \(2^3\) hoặc \(2^5\) chia \(3\) đều dư \(2\).
Em đang thử làm thế này
\({a^b}^c \% 3=(a^b \% 3)^c \% 3=((a\%3)^b\%3)^c\%3\)
Ở đây thì \(a=406859826201904955\%3=2 \Rightarrow (2^b\%3)^c\%3\)
Do \(b=878154055165301931 \% 2=1 \Rightarrow 2^b\%3=2 \Rightarrow 2^c\%3\)
Mà \(c=773734380604007182 \%2 = 0 \Rightarrow 2^c\%3=1\)
Không biết em sai ở đâu ạ?
Bởi vì phép lũy thừa phải tính từ trên xuống dưới. Bạn có thể xem phần giải thích test VD của bài https://lqdoj.edu.vn/problem/multiplepow