Chúc mừng năm mới 2016!

Để năm mới may mắn hơn mình sẽ đố vui một bài toán đầu năm như sau:
Tìm chữ số đầu tiên và cuối cùng của 2016^2016

10 Likes

số cuối cùng chắc chắn là 6. Còn số đầu tiên thì … K biết.

2 Likes

số đầu là 4 số cuối là 6 không biết có đúng không

1 Like

Góp vui lấy trước số cuối :smile:

7

3 Likes

Số đầu là số 6, do chữ số hàng đơn vị của tích số chỉ bị ảnh hưởng bởi hai chữ số hàng đơn vị của hai thừa số.
Số cuối là số 6, không biết trình bày sao :sweat_smile:.

1 Like

Hình như là 7 và 6 :stuck_out_tongue_winking_eye:

5 Likes

Em cũng góp vui 7-6

4 Likes

Bài này có thể giải bằng toán. Không cần tính số lớn để tìm số đầu tiên đâu :smiley:

làm như thế nào v ạ, chỉ e với.

Dùng BigInteger trong java có thể giải nhanh như sau:

System.out.println(BigInteger.valueOf(2016).pow(2016));
4 Likes

Nếu là C hay C++ thì sao ạ?

2 Likes

Giải bằng toán kiểu gì vậy ạ :smile:

Dùng logarit… :smiley:

4 Likes

Lời giải khá ngắn như sau:
Giả sử A=2016^2016, a là chữ số đầu, k là số chữ số của A
ta có: a*10^(k-1)<= A<= (a+1)10^(k-1)
logarit cơ số 10 2 vế
loga+k-1<= logA< log(a+1)+ k-1
dễ dàng suy ra k=[logA]+1= [2016
log2016]+1 = 6662
loga<={logA}; log(a+1)> {logA}
=> a=[10^{logA}] = 7

{} là phép lấy phần thập phân
[] là phép lấy phần nguyên

9 Likes

Gọi M là chữ số đầu tiên, 1 <= M <= 9. Ta có:

20162016 = M.mantissa x 10exponential
log10(20162016) = log10(M.mantissa x 10exponential)
2016 x log10(2016) = log10(M.mantissa) + log10(10exponential)
6661.852904 = log10(M.mantissa) + exponential

trong đó:

  • mantissa là phần thập phân < 1.0,
  • (exponential+1) là số chữ số của 20162016

vì mantissa < 1 nên M.mantissa = M + mantissa < 10. Vậy log10(M.mantissa) < 1. Hay phần này chính là phần thập phân của 6661.852904.

vậy ta có:
log10(M.mantissa) = 0.852904
M.mantissa = 100.852904
M.mantissa = 7.1269…

vậy M = 7

edit: ặc, viết lời giải trễ 2 phút :smile:

12 Likes

dùng modum chắc ra
:smiley: :smiley:

toàn chuyên Toán với chuyên Tin thế này :smile:

5 Likes

python thần thánh, vài tích tắc thôi :slight_smile: sao cái này tính nhanh thế mà em code giaỉ thuật độ phức tạp cao là nó đớ lun v

1 Like

Bác có biết là lúc đầu em lo xa phải ngồi cài numpy không :joy: xong lúc đang chờ nó cài đặt thì thử pow cái được luôn :joy: hư cấu v~ :smile:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?