PKU 2845 - 01000001

Autor da análise: dinakdinak

Link: http://acm.pku.edu.cn/JudgeOnline/problem?id=2845

Resumo

Dadas duas strings representando números binários, retornar a soma sem zeros à esquerda.

Solução

A soma deve ser feita num vetor de caracteres, porque o número binário pode ter 80 casas binárias.
Após ler as duas strings, efetuar a soma casa a casa do vetor considerando o CARRY. Aqui temos 3 observações:
- considere a ordem de bits, comece a somar do bit menos significativo LSB, para isso inverta a string ou comece somar a partir do final de cada string;
- lembre-se que o valor do caractere ' 0' é igual a 48, faça as conversões necessárias;
- os operandos podem ter tamanhos diferentes, considere isso.
Lembre-se de retirar os zeros à esquerda (e inverter os bits conforme o caso), isso e importante, porque na entrada, o número 5 pode ser representado assim também: 00000000000101.

Testes

Entrada

4
1001101 10010
1001001 11001
1000111 1010110
0000101 000111

Saída

1 1011111
2 1100010
3 10011101
4 1100

Enquete

Qualidade do enunciado

Dificuldade do problema

Problema interessante

Discuta o problema

Add a New Comment
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License