10.8训练

A - Keanu Reeves

题意:

        一个字符串,可以随意拆分,问怎么拆能让两个串1和0个数不同。

分析:

        如果本来就不相同,输出原串即可,如果相同,那么分成1和n-1两个串,肯定1和0数量不同。

代码:

 B - Number Circle

题意:

        给你一组数,把它围成一个圈,数字随意换位置,你需要让每个值小于它前一个和后一个的和,问是否可以。

分析:

        你可以从小到大排序,每个值肯定小于前一个和后一个的和,但是你要考虑最后几个值,最后一个值,不一定小于第一个和倒数第二个的值的和,所以你需要判断最后一个值是否小于倒数第二和倒数第三的和,如果小于,那么把最后一个值放到第一个,倒数第二个放到第二个,倒数第三个放到最后一个,这样就快可以了。

代码:

 

C - Candies!

题意:

        有n个数,n是2的次方数,有t次查询,每次查询给一个区间r,l,区间长度也是2的次方数将区间里面的数2 ∗ i 和2∗i+1相加形成一个新的数,如果这个数大于等于10,,则结果加1,然后对10取模,合成最后一个数,问结果多少。

分析:

        每次输入数据时,先将数据存入一个数组中,每次输入x,使s[i]=s[i-1]+x;,之后开始t次查询,每次输入l,r,输出数组l到r除以10的结果。

代码:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值