看过一道题,意思大概是说给出一个字符串A,再给出一个字符串B,然后判断B里的所有字母是否在A出现过。
比如A:JIBBAMLDK
B: BALJD
返回 TRUE
比如A:JIBBAMLDK
B: BALJDF
返回:FALSE(因为F没出现过)
一开始给了这个题,是不是想用s.find(),或者C中的strchr枚举,利用返回的值来确定呢。。。
但是我从那篇文章中看到另一种有趣的,
利用字母表的字母一一对应素数表,比如 A = 2 , B = 3 , C = 5 .....
然后用计算A串和B串各字母相乘法的积,如果MOD后余数是0的话就是TRUE啦。。。
虽然在实际中做题时基本没碰见过,但也是一个不错的想法喔喔~~