【UVA10976】UVA在这题出现了什么故障?

UVA10976 Fractions Again?!

@[sunyizhe](/user/481330) 不会看编译信息可以 ** 呢。这不是 CE 了吗。
by Sprague_Garundy @ 2022-11-22 19:55:49


你是懂编译的
by Katz @ 2022-11-22 19:56:48


@[Sprague_Garundy](/user/764746) 可是我在本机上能通过啊。也没发现UB?
by sunyizhe @ 2022-11-22 19:57:22


@[sunyizhe](/user/481330) 6,建议发一下你的编译器版本呢,我 GCC 12.2.0 C++14 下 CE 了。
by Sprague_Garundy @ 2022-11-22 19:57:53


我的编译信息太多了,而且这玩意洛谷 IDE 也查得出来吧: ```text /tmp/compiler_xvbnm5gx/src: 在函数‘int main()’中: /tmp/compiler_xvbnm5gx/src:22:49: 错误:no match for ‘operator-’ (operand types are ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} and ‘int’) 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ~~~~~~~~~~^~ | | | | | int | std::map<int, int, std::greater<int> >::iterator {aka std::_Rb_tree_iterator<std::pair<const int, int> >} In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_algobase.h:67, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/char_traits.h:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ios:40, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/istream:38, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/sstream:38, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:45, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_iterator.h:415:5: 附注:candidate: ‘template<class _IteratorL, class _IteratorR> decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)’ 415 | operator-(const reverse_iterator<_IteratorL>& __x, | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_iterator.h:415:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::reverse_iterator<_Iterator>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_algobase.h:67, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/char_traits.h:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ios:40, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/istream:38, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/sstream:38, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:45, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_iterator.h:1212:5: 附注:candidate: ‘template<class _IteratorL, class _IteratorR> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)’ 1212 | operator-(const move_iterator<_IteratorL>& __x, | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_iterator.h:1212:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::move_iterator<_IteratorL>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:357:5: 附注:candidate: ‘template<class _Tp> std::complex<_Tp> std::operator-(const std::complex<_Tp>&, const std::complex<_Tp>&)’ 357 | operator-(const complex<_Tp>& __x, const complex<_Tp>& __y) | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:357:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::complex<_Tp>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:366:5: 附注:candidate: ‘template<class _Tp> std::complex<_Tp> std::operator-(const std::complex<_Tp>&, const _Tp&)’ 366 | operator-(const complex<_Tp>& __x, const _Tp& __y) | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:366:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::complex<_Tp>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:375:5: 附注:candidate: ‘template<class _Tp> std::complex<_Tp> std::operator-(const _Tp&, const std::complex<_Tp>&)’ 375 | operator-(const _Tp& __x, const complex<_Tp>& __y) | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:375:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: mismatched types ‘const std::complex<_Tp>’ and ‘int’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/ccomplex:39, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:54, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:452:5: 附注:candidate: ‘template<class _Tp> std::complex<_Tp> std::operator-(const std::complex<_Tp>&)’ 452 | operator-(const complex<_Tp>& __x) | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/complex:452:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::complex<_Tp>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/deque:67, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:68, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_deque.h:370:5: 附注:candidate: ‘template<class _Tp, class _Ref, class _Ptr> typename std::_Deque_iterator<_Tp, _Ref, _Ptr>::difference_type std::operator-(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)’ 370 | operator-(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x, | ^~~~~~~~ /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/bits/stl_deque.h:370:5: 附注: template argument deduction/substitution failed: /tmp/compiler_xvbnm5gx/src:22:50: 附注: ‘std::map<int, int, std::greater<int> >::iterator’ {aka ‘std::_Rb_tree_iterator<std::pair<const int, int> >’} is not derived from ‘const std::_Deque_iterator<_Tp, _Ref, _Ptr>’ 22 | for(map<int,int>::iterator it=dict.end()-1;it!=dict.begin();it++) | ^ In file included from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/deque:67, from /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9.3.0/include/c++/9.3.0/x86_64-unknown-linux-gnu/bits/stdc++.h:68, from /tmp/compiler_xvbnm5gx/src:1: /nix/store/496xlqhx1mk41sdmrl58xi5y4pa0alys-luogu-gcc-9. ... ```
by Sprague_Garundy @ 2022-11-22 20:00:04


@[Sprague_Garundy](/user/764746) 我知道了。应该是第 22 行出现了问题。我本机不知道咋通过编译的,神奇……
by sunyizhe @ 2022-11-22 20:04:36


感谢 @[Sprague_Garundy](/user/764746) 大佬! 本贴完结!
by sunyizhe @ 2022-11-22 20:08:20


@[sunyizhe](/user/481330) 因为系统不同,Windows 和 NOI Linux 2.0 和外国其他系统的运行方式&评测方式不同。
by _H17_ @ 2022-11-22 20:12:29


|