SGU 刷题

记录SGU 刷题。

 

100. A+B

 

101. Domino

题意:经典的骨牌拼接问题,将数字看做点,骨牌看作边,转化成无向图求欧拉路。

 

102. Coprimes

题意:求euler phi函数。

 

105. Div 3

题意:给你一个数列 1, 12, 123, ..., 123456789, 12345678910, ....。问你前n(n < 2^31) 项中有多少个数可以被3整除。

观察:打个表,或者推一下就会发现规律。

 

107. 987654321 problem

题意:给你一个n(n <= 1e6),问你有多少n位数的平方以987654321结尾。

观察:以987654321结尾,即模1e9得到987654321,所以满足条件的数,最小的9位会有一些限制,其他较高位可以随意组合。首先暴力算出n=9时,答案是8,n小于9时答案是0。然后考虑n>9的情况,最高的n-9位有10^(n-9)-10^(n-10) = 9*10^(n-10)种选法,最低的9位有8种选法,所以答案是72*10^(n-10)。

方法:分情况讨论,暴力输出即可。

 

108. Self-numbers 2

题意:对于一个正整数n,d(n) = n + sum of digits of n。我们称n是d(n)的一个generator。如果一个数n没有generator,就称n是一个self-number。下面给你一个n(n <= 1e7)和k(k <= 5e3) 个询问s[1-k],让你先输出1-n中有多少个self-number,然后再输出第s[i]个self number是啥。时限500ms,内存限制4096 KB

观察

  时限很紧,可以做一个计算d(n)的优化。令sum(i) 为 i中各数位之和,d(i) = i + sum(i)。我们可以用一个静态数组sum[10000]记录下[0, 9999]的sum(i),对于[1, 1e7] 中任意的i,sum(i) = sum[i/10000] + sum[i%10000]。sum[]数组可以暴力计算,也可以利用sum[i] = sum[i/10]+i%10。

  其次内存比较小。如果内存很大,我们可以用一个vis[1e7]来记录每个数是否有generator,从1到n扫一遍,每次如果vis[i] == false, 更新答案;然后vis[d(i)] = true就好了。我们注意到,在[1, 1e7]中,sum(i) <= 9*7 = 63。也就是 d(i) <= i+63。所以可以利用一个长度为64的滚动数组来实现vis[1e7]的功能。

WA:没有注意内存和时限。其次就是没有注意到询问是无序的,并且有重复。

 

112. a^b-b^a

题意:给你a,b,均不超过100,让你输出a^b-b^a。

方法:大整数即可

 

113. Nearly Prime numbers

题意:如果一个数可以表示成两个素数相乘的形式,那么就说他是nearly prime。给你多组询问,每次让你输出一个n是不是nearly prime,n <= 1e9。

方法:计算一个数的质因子个数即可,重复质因子算多个。

 

114. Telecasting Station

题意:数轴上若干个位置,每个位置上有些人。让你找出一个位置,使得各个位置的人数乘上各个位置到该位置的距离 的和 最小。

方法:把选中的位置作为变量,每一个有人的位置对答案的贡献是一个绝对值函数,且权都为正,所以加在一起,肯定是先递减,再递增。找一下中间位置就好了。本质好像就是一个带权取中位数。

回顾:自己是搞出导数,每个点的值都算了一下。看到别人写的比较好。对人数求一个前缀和,找到人数刚好过半的位置,就是答案。

 

116. Index of super-prime

题意:考虑素数从小到大排p1, p2, p3, ... 如果pi的下标i也是素数,我们就称pi是super prime。下面给你一个正整数n,不超过1e4,问你是否可以用最少数量的super prime将n分解,如果不可以输出0,如果可以,输出最小数量和方案,方案中super prime按照非递增顺序。

方法:记忆话搜索即可。因为要非递增顺序输出方案,注意更新答案的顺序或者时机。

 

117. Counting

题意:给你正整数n,m,k,和一个长度为n的正整数序列a[1-n],所有数均不超过10001。下面让你统计有多少i,满足a[i]^m % k == 0。

方法:将k素因子分解,对于一个a[i],用k的每一个素因子去检查a[i]即可。

回顾:自己好菜,看到大家的方法是模k的快速幂。

 

123. The sum

题意:让你求fibonacci的前k(k <= 40)的和。

方法:暴力求就好了。k更大的时候可能需要快速幂。

 

126. Boxes

转载于:https://www.cnblogs.com/skyette/p/8436211.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
1. 智慧监狱概述 智慧监狱的建设背景基于监狱信息化的发展历程,从最初的数字化监狱到信息化监狱,最终发展到智慧监狱。智慧监狱强调管理的精细化、监管的一体化、改造的科学化以及办公的无纸化。政策上,自2017年以来,司法部连续发布了多项指导性文件,推动智慧监狱的建设。 2. 内在需求与挑战 智慧监狱的内在需求包括数据应用与共享的不足、安防系统的单一功能、IT架构的复杂性、信息安全建设的薄弱以及IT运维的人工依赖。这些挑战要求监狱系统进行改革,以实现数据的深度利用和业务的智能化。 3. 技术架构与设计 智慧监狱的技术架构包括统一门户、信息安全、综合运维、安防集成平台和大数据平台。设计上,智慧监狱采用云计算、物联网、大数据和人工智能等技术,实现资源的动态分配、业务的快速部署和安全的主动防护。 4. 数据治理与应用 监狱数据应用现状面临数据分散和共享不足的问题。智慧监狱通过构建数据共享交换体系、数据治理工具及服务,以及基于数据仓库的数据分析模型,提升了数据的利用效率和决策支持能力。 5. 安全与运维 智慧监狱的信息安全建设涵盖了大数据应用、安全管理区、业务区等多个层面,确保了数据的安全和系统的稳定运行。同时,综合运维平台的建立,实现了IT系统的统一管理和自动化运维,提高了运维效率和系统的可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值