当前位置: 首页 > news >正文

四川建设厅网站网站建设在哪个软件下做

四川建设厅网站,网站建设在哪个软件下做,html视频网站模板,有哪些比较好的外贸网站一、题目 你需要设计一个包含验证码的验证系统。每一次验证中#xff0c;用户会收到一个新的验证码#xff0c;这个验证码在 currentTime 时刻之后 timeToLive 秒过期。如果验证码被更新了#xff0c;那么它会在 currentTime #xff08;可能与之前的 currentTime 不同用户会收到一个新的验证码这个验证码在 currentTime 时刻之后 timeToLive 秒过期。如果验证码被更新了那么它会在 currentTime 可能与之前的 currentTime 不同时刻延长 timeToLive 秒。 请你实现 AuthenticationManager 类 AuthenticationManager(int timeToLive) 构造 AuthenticationManager 并设置 timeToLive 参数。 generate(string tokenId, int currentTime) 给定 tokenId 在当前时间 currentTime 生成一个新的验证码。 renew(string tokenId, int currentTime) 将给定 tokenId 且 未过期 的验证码在 currentTime 时刻更新。如果给定 tokenId 对应的验证码不存在或已过期请你忽略该操作不会有任何更新操作发生。 countUnexpiredTokens(int currentTime) 请返回在给定 currentTime 时刻未过期 的验证码数目。 如果一个验证码在时刻 t 过期且另一个操作恰好在时刻 t 发生renew 或者 countUnexpiredTokens 操作过期事件 优先于 其他操作。 示例 来源力扣LeetCode 链接 二、C解法 我的思路及代码 此代码在力扣超时但是我觉得力扣评判的不标准 用两个哈希表第一个存储token到期时间第二个存储当前时间有几个未过期的token。 新建操作更新token的到期时间并且更新这个持续时间中的token数量。 更新操作判断当前token是否到期若还有效则更新token的到期时间并且从原来的到期时间开始直到新的到期时间结束的时间内继续增加token数量。 class AuthenticationManager { public:int timeToLive;unordered_mapstring,int tokenAndTimePast;unordered_mapint,int countTokens;AuthenticationManager(int timeToLive) {this-timeToLive timeToLive;}void generate(string tokenId, int currentTime) {tokenAndTimePast[tokenId] currentTimetimeToLive;for(int icurrentTime;icurrentTimetimeToLive;i){countTokens[i];}}void renew(string tokenId, int currentTime) {//当tokenId不存在的时候他对应的值为0所以可以用这个条件来判断if(tokenAndTimePast[tokenId]currentTime){for(int itokenAndTimePast[tokenId];icurrentTimetimeToLive;i){countTokens[i];}tokenAndTimePast[tokenId] currentTimetimeToLive;}}int countUnexpiredTokens(int currentTime) {return countTokens[currentTime];} };/*** Your AuthenticationManager object will be instantiated and called as such:* AuthenticationManager* obj new AuthenticationManager(timeToLive);* obj-generate(tokenId,currentTime);* obj-renew(tokenId,currentTime);* int param_3 obj-countUnexpiredTokens(currentTime);*/时间复杂度构造函数O(1)generateO(n)其中 n 为 currentTime 的秒数renewO(n)其中 n 为 currentTime 的秒数官方写的countUnexpiredTokensO(n)其中 n 为 generate 的调用次数。空间复杂度O(n)两个 map 中 n 都为 generate 的调用次数。 官方参考代码 class AuthenticationManager { private:int timeToLive;unordered_mapstring, int mp; public:AuthenticationManager(int timeToLive) {this-timeToLive timeToLive;}void generate(string tokenId, int currentTime) {mp[tokenId] currentTime timeToLive;}void renew(string tokenId, int currentTime) {if (mp.count(tokenId) mp[tokenId] currentTime) {mp[tokenId] currentTime timeToLive;}}int countUnexpiredTokens(int currentTime) {int res 0;for (auto [_, time] : mp) {if (time currentTime) {res;}}return res;} }; 时间复杂度构造函数O(1)generateO(1)renewO(1)官方写的countUnexpiredTokensO(n)其中 n 为 generate 的调用次数。我认为的countUnexpiredTokens里面带有 for 循环循环次数和 mp 的个数相关而 mp 的个数和 tokenId 的数量相关所以我认为是 countUnexpiredTokens O(nt)其中 n 为 generate 的调用次数t 为 tokenId 的数量。空间复杂度O(n)其中 n 为 generate 的调用次数map 中有 n 个元素。
http://www.hkea.cn/news/14496078/

相关文章:

  • 在线crm网站discuz是什么网站程序
  • 关于网站开发的论文自助建站凡科网
  • 太原cms建站南宁企业网站制作模板
  • 新津网站建设政务服务网站建设整改报告
  • wordpress多站点在上海做网站
  • 河南郑州广告公司网站建设wordpress如何设置注册用户名大于4个字符
  • 营销网站首页设计网络seo关键词优化技术
  • 百度建一个网站多少钱天津建设工程信息网渤海油田
  • 一流的聊城做网站费用2018建设网站
  • app软件下载网站免费进入最全做暖暖网站
  • 纪检网站建设计划保定市住房和城乡建设厅网站
  • ipv6改造 网站怎么做6大连德泰建设
  • 西安+美院+网站建设中山网站seo优化
  • 南宁公司网站建设dw旅游网站模板
  • 庆阳建设局网站WordPress搜索词记录
  • 图列说明网站开发的流程网站建设需要什么专业
  • 网站数字化建设怎么寻找做有意做网站的客户
  • 建设银行网站修改手机号建设网站需要哪些东西
  • 网站黑链xxx网站策划书
  • 咸阳 网站建设鲜花网网站开发的意义
  • 世界总人口实时数据黑锋网seo
  • asp网站伪静态西安网站制作中心
  • 自己如何建设网站首页开发帮官方网站
  • 网站建设的种类黑龙江最新通知今天
  • 五家渠网站建设eclipse tomcat 网站开发
  • 建设网站那家好什么是网络推广
  • 哪个软件可以做网站平面设计与广告设计
  • 重庆官方推广网站手机网站静态模板下载
  • 公司网站制作投标有哪些做微博长图网站
  • 贷款织梦网站模版小说网站快速做排名