What happened with __int128_t?

Правка en6, от 0x0002, 2024-06-10 13:36:14

I was solving problem F of ABC just now. And I got passed with long long, but when I change the type into __int128_t, it got wrong answer in most of the cases. Why is that?

Passed with long long.

Wrong answer with int128.

Upd: It is said that __int128_t can not be the index of array. It may cause wrong answer. So it is always not a good idea to use things like #define int __int128_t.

Upd2: I just tested some other things on AtCoder about __int128_t, it seems template<typename> may work incorrectly with __int128_t. That's from my function read(). I searched for many times in Google but have not found why.

Теги __int128

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
en6 Английский 0x0002 2024-06-10 13:36:14 18
en5 Английский 0x0002 2024-06-10 09:01:19 226
en4 Английский 0x0002 2024-06-09 17:32:32 77
en3 Английский 0x0002 2024-06-09 14:50:40 4 Tiny change: 'aid that `int128` can not ' -> 'aid that `__int128_t` can not '
en2 Английский 0x0002 2024-06-09 06:49:47 91
en1 Английский 0x0002 2024-06-08 17:08:35 379 Initial revision (published)