有趣的数——构造符合条件的数

给你一个区间,问有多少个数符合每一位中,只有一个数字和其他数字不同,也就是其他数字都相同,有且只有一个异类;

数据范围是1e16;

因为只考虑数量而不用管大小;

只要0到9枚举出来就好了;

#include<cstdio>
#include<map>
#include<cstring>
#include<algorithm> using namespace std;
typedef long long ll;
map<ll,int>mp;
ll l,r;
int a[]; int check(int x,int len)
{
ll sum=;
for(int i=;i<=len;i++)
{
if(a[i]==-) a[i]=x;
sum=sum*+a[i];
}
if(sum>=l&&sum<=r)
{
if(!mp[sum])
{
mp[sum]=;
return ;
}
//printf("%d\n",sum);
return ;
}
else return ;
}
int ans;
int main()
{
scanf("%lld%lld",&l,&r);
for(int len=;len<=;len++)
{
for(int i=;i<=;i++)
{
for(int j=;j<=;j++)//单独的数
{
if(i==j) continue;
for(int k=;k<=len;k++)//单独的数的位置
{
memset(a,-,sizeof(a));
if(k==&&j==) continue;
a[k]=j;
if(check(i,len)) ans++;
}
}
}
}
printf("%d",ans);
return ;
}

记得判重,用的map省心;

欢乐ABC——连续区间找相同的量

给你一个字符串,一个区间中A,B,C的数量如果相等,这样的区间的个数是多少,区间要连续;

数据范围1e6;

用前缀和记录ABC的个数;

如果a[j]-a[i-1]=b[j]-b[i-1],b[j]-b[i-1]=c[j]-c[i-1],即a[j]-b[j]=a[i-1]-b[i-1],b[j]-c[j]=b[i-1]-c[i-1],这样的区间i到j就是合法的;

(a[i]-b[i],b[i]-c[i])为一个元素,访问前方有多少相等的元素;

我们还可以再次转化,令A=1e7,B=-999999,C=-1;

用sum记录前缀和,再sort一遍,求相邻的星通的数;

因为排序过后,相邻的数如果相等,说明在这两个数之间A+B+C=0;也就是三个字符的数量相等;

#include<cstdio>
#include<map>
#include<algorithm>
#include<cstring>
using namespace std;
const int maxn=1e6+;
char s[maxn];
int a=,b=-,c=-;
long long sum[maxn];
int ans;
int main()
{
scanf("%s",s);
int len=strlen(s);
for(int i=;i<len;i++)
{
sum[i+]=sum[i];
if(s[i]=='A') sum[i+]+=a;
else if(s[i]=='B') sum[i+]+=b;
else if(s[i]=='C') sum[i+]+=c;
}
sort(sum,sum+len+);
int last=;
for(int i=;i<=len;i++)
{
if(sum[i]==sum[i-])
{
ans+=i-last;
}
else last=i;
}
printf("%d",ans);
return ;
}

打游戏

小强又双叒叕一天随手AK的ZROI的J转S模拟赛。AK完了的小强觉得OI太简单了,太没意思了,于是开始打起了更有挑战的游戏。

小强在游戏里打怪。有一次,他一下子遇到了 n 个怪物。 每个怪物有一个生命值,第 i个怪物的生命值是 hi。而小强除了生命值之外,还有一个属性是魔法值 m。

小强和怪物们依次行动。每一回合,小强先行动,然后怪物们同时行动。小强每次可以选择以下行动之一:

• 普通攻击:令某个怪物的生命值减少 1。

• 重击:消耗 1 魔法值,令某个怪物的生命值减少 2。

• 群体攻击:消耗 1 魔法值,令全体怪物的生命值减少 1。

而每个存活的怪物(生命值严格大于 0)每次会令小强的生命值减少 1。假设小强有足够的生命值来维持存活,小强想知道自己至少需要被消耗多少生命值才能击败所有怪物。

第一行为两个正整数 n 和 m。

第二行为 nn 个正整数,第 i 个数为 hi

普转提——有趣的数,欢乐ABC,打游戏的更多相关文章

  1. ZROI #364. 【2018普转提day18专题】嘤嘤嘤

    ZROI #364. [2018普转提day18专题]嘤嘤嘤 直接贴代码 具体见注释 #include<stdio.h> #include<cstring> #include& ...

  2. ZR普转提2

    ZR普转提2 A 谢谢刁神教我A题 刚开始读错题了,以为是一个不可做的数位DP,然后就暴力滚粗 直到问了问刁神,发现自己题意是错的 然后成了比较简单的题目 直接暴力枚举每一位填什么,剩下的位数的数字都 ...

  3. ZR9.8普转提

    ZR9.8普转提 A,B 打过的CF原题,不管了 C 确认过眼神,是我不会写的DP, 发现这个题目要求的过程类似与一个所有括号都不一样的括号匹配的过程 但是限制条件非常多,有点无从下手的感觉 我们设\ ...

  4. nyoj 85 有趣的数

    点击打开链接 有趣的数 时间限制:3000 ms  |  内存限制:65535 KB 难度: 描述 把分数按下面的办法排成一个数表. 1/1 1/2 1/3 1/4..... 2/1 2/2 2/3. ...

  5. CCF 201312-4 有趣的数 (数位DP, 状压DP, 组合数学+暴力枚举, 推公式, 矩阵快速幂)

    问题描述 我们把一个数称为有趣的,当且仅当: 1. 它的数字只包含0, 1, 2, 3,且这四个数字都出现过至少一次. 2. 所有的0都出现在所有的1之前,而所有的2都出现在所有的3之前. 3. 最高 ...

  6. P2022 有趣的数

    P2022 有趣的数 题目描述 让我们来考虑1到N的正整数集合.让我们把集合中的元素按照字典序排列,例如当N=11时,其顺序应该为:1,10,11,2,3,4,5,6,7,8,9. 定义K在N个数中的 ...

  7. CCF软考---《有趣的数》

    脑子一热报了CCF的软测..但是又觉得好像并没有什么卵用,就当为蓝桥杯预热然后顺便去软件学院玩一玩吧,遇到一个有意思的题: time limits : 1s 问题描述 我们把一个数称为有趣的,当且仅当 ...

  8. CCF系列之有趣的数(201312-4)

    题目链接: http://115.28.138.223:81/view.page?opid=4 试题名称: 有趣的数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 我们把一个 ...

  9. CSP201312-4 有趣的数【dp】

    问题描述 试题编号: 201312-4 试题名称: 有趣的数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 我们把一个数称为有趣的,当且仅当: 1. 它的数字只包含0, 1, ...

随机推荐

  1. SCALA基础知识学习

    注:本文只说和Java不同的地方. 总结自: Scala详细教程 Scala教程 scala基础语法 Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ";" 是 ...

  2. MySQL 解决source 命令导入数据库 乱码

    在我把库.表.sql脚本的编码格式都设置为UTF-8后,任然有乱码,任然有报错: 于是按以下方式重新登录后,解决: mysql -u root -p --default-character-set=u ...

  3. 用户注册&单点登录

    package com.tttttt.portal.controller; import java.util.HashMap; import java.util.Map; import javax.s ...

  4. 数据结构与算法(周测2-AVL树)

    判断题 1.The inorder traversal sequence of an AVL tree must be in sorted (non-decreasing) order.      T ...

  5. mybatis查询foreach使用

    1.mybatis传入map参数,map中包含list: List<FukaModel> fukaModels = price.getSchemaPrice().getFukaList() ...

  6. h5常见

    Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面//一.HTML页面结构<meta name="viewport" content="widt ...

  7. Windows下计算md5值

    目录 Windows下计算md5值 1.linux 下计算md5值 2.Windows下计算md5值 Windows下计算md5值 1.linux 下计算md5值 [root@master yl]# ...

  8. Vs2017 NetCode Mvc EF Mysql 整合1

    1  运行环境   vs2017   NetCode2.0 2 NuGet  MySql.Data.EntityFrameworkCore 8.0.18 3  源代码 https://github.c ...

  9. MySQL在command line Client下的一些命令

    MySQL在command line Client下的一些命令 通过CMD进入到本地数据库: mysql -h localhost -u -root -p 参数说明: -h 要连接的服务器的主机名或I ...

  10. HRNet网络结构

    最近正在阅读CVPR2019的论文Deep High-Resolution Representation Learning for Human Pose Estimation. 无奈看论文中的Netw ...