学习视频课程(20')
程序题(80'+50')
热身题(20')
思路
文件读写
逐行读取并写入
getline 直到eof
结果
很和谐
基本题(60')
思路
同热身题一样逐行读取并分析数据
先用sstream将每行文本分割成发送方,接收方和信息长度
用map储存发送方和信息长度(key为发送方,value为信息长度)
将首次出现的发送方储存在容器中
当发送方不是首次出现时,key对应的value增加而不是插入
此处判断是否超过1500并输出
且黑客数+1
最后输出黑客数
结果
开放题:
吐槽:
1.储存所有请求再统计总值会浪费储存空间并无法实时发现黑客
2.判断黑客方式过于草率,可能会误封大客户
改进:
1.建立数据库,将每次收到的数据(发送方,接收方,长度,内容,时间)储存下来
2.每次接受消息,先判断长度是否过于短,再判断频率是否过高,结合内容(是否为垃圾内容)来找出黑客。
缺点:
要做到准确率高,需要用到大数据,内容的识别是最重要的,要用到字典,这可能会占用许多储存空间,识别内容时,需要较长时间进行判断。