Quantcast
Channel: C++博客-所有随笔
Viewing all articles
Browse latest Browse all 7882

UVa 128 Software CRC

$
0
0

总结

大数的余数问题。

分析

除数为大数的求法:
int mod = 0;
char ch;
while (c = getchar())
    mod = (mod*10 + ch-'0') % b
其中 b 为被除数。即利用余数的性质从最高位逐个读入。
而题中 CRC 的求法是一个字节一个字节的算,所以对上面的程序小加修改:
mod = ((mod<<8) + ch-'0') % b

陷阱

CRC 校验码是算在除数中的。所以处理完输入文本,要重复2次上面的操作,以空出 CRC 校验码的位置。

happyac 2013-06-18 06:33 发表评论

Viewing all articles
Browse latest Browse all 7882

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>