Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
MUL2COM - Binary multiplication |
English | Vietnamese |
In this problem, you have to multiply two n-bit binary numbers in 2s complement form. The result should be also a n-bit binary number in 2s complement form. In case there is an arithmetic overflow, you program should be able to detect it.
For your information, the 2s complement form of -x is the number 2^n-x. A n-bit 2s complement number ranges from -2n-1 to 2n-1-1.
Input
There are multiple test cases (no more than 40). For each test case, there are three input lines. The first line contains n (0 ≤ n ≤ 1024). n=0 signals the end of the input. Otherwise, the second and third lines contain the two n-bit binary numbers.
Output
For each test case, output "overflow" if there is an arithmetic overflow. Otherwise, print the result in 2s complement form.
Example
Input 3 110 011 4 0011 1110 0 Output overflow 1010
Được gửi lên bởi: | Jimmy |
Ngày: | 2008-09-10 |
Thời gian chạy: | 0.204s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ADA95 ASM32 BASH BF C CSHARP CPP C99 CLPS LISP sbcl LISP clisp D FORTRAN HASK ICON ICK JAVA LUA NEM NICE OCAML PAS-GPC PAS-FPC PERL PHP PIKE PRLG-swi PYTHON RUBY SCM guile SCM qobi ST WHITESPACE |
Nguồn bài: | © VNOI |
hide comments
2009-06-03 05:52:37 RR
http://en.wikipedia.org/wiki/Booth%27s_multiplication_algorithm |