q1:最短子串

时间限制: 1.000 Sec 内存限制: 128 MB

题目描述

给出字符串S,字符串的每一个字符是’1’或’2’或’3’。你要从S中选取一段连续字符,不妨假设这段连续的字符构成的字符串是T,你的目标是使得T的长度最短,而且字符’1’、’2’、’3’在T中都出现过。如果无法完成目标则输出0,否则输出T的最短长度。

输入

一个字符串S,长度不超过200000。

输出

一个整数。

样例输入 Copy

112233

样例输出 Copy

4

提示

对于60%的分数,S的长度不超过100。

这个题如果直接套两层循环会超时的,所以需要用“尺取法”

尺取法:即像尺子一样在一堆数据中选取连续的某一段,个人感觉也是双指针把,需要设置一个head,一个end,每次根据情况移动头或者尾,一般用于求取一定有限制的区间或者最短的区间

注意:

1.如何推进左右端点

2.何时结束

最后是本体的代码

#include <iostream>
#include <cstring>
#include <algorithm>using namespace std;int a[202000];
int st[5];
int main()
{char s[202000];scanf("%s",s);int u=strlen(s);for(int i=0;i<u;i++){if(s[i]-'0'!=1&&s[i]-'0'!=3&&s[i]-'0'!=2){u=i+1;break;}a[i+1]=s[i]-'0';}for(int i=1;i<=u;i++){st[a[i]]++;}int x=1,y=1;if(st[1]==0||st[2]==0||st[3]==0)    cout<<0;else{int f[5];int ans=210000;memset(f, 0, sizeof f);f[a[1]]++;while(x<=y&&y<=u){if(f[1]!=0&&f[2]!=0&&f[3]!=0){ans=min(ans,(y-x+1));f[a[x]]--;x++;}else{y++;f[a[y]]++;}}cout<<ans;}return 0;
}

q2:数对

时间限制: 1.000 Sec  内存限制: 512 MB

题目描述

我们有 A 和 B 两个正整数,同时如果能找到 n 和 m 两个正整数满足下面的条件:

  • n+ m = A
  • n × m= B

我们就称这样的 A 和 B 是奇异数。现在给你 T 组 A 和 B,每组都要计算这样满足这样条件的 n 和 m 有多少对?
注意:n 大于 m 或者 m 大于 n 或者 m 等于 n 都可以。

输入

输入的第一行是一个整数 T,表示 A 和 B 的组数。
接下来 T 行,每行有两个整数 A 和 B。

输出

输出有 T 行,对于每组 A 和 B,输出使得它们成为奇异数的正整数 n 和 m 有多少对。

样例输入 Copy

【输入样例1】
1
5 6【输入样例2】
2
3 2
1000000000000 1【输入样例3】
6
1908 444992
1925 553696
1881 878378
5460 514944
1172 268867
2652 702121

样例输出 Copy

【输出样例1】
2【输出样例2】
2
0【输出样例3】
2
2
2
2
2
0

提示

【样例1解释】
这里只有一组 A 和 B,满足条件的 n 和 m 有 2 对,分别是 n= 2,m = 3 和n= 3,m = 2 。

【样例2解释】
这里有 2 组 A,B,第 1 个答案是 2,第 2 个答案是 0。

【数据规模】
对于 100% 的数据,保证 1 ≤ A,B ≤ 1012,1 ≤ T ≤ 100。

i*i<=b or i<=sqrt(b)的区别
sqrt()返回浮点型数据

ac代码

#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>using namespace std;
int t;
int main()
{cin>>t;while(t--){long long a,b;cin>>a>>b;int x=0;for(int i=1;i<=sqrt(b);i++){if(b%i==0&&b/i+i==a){if(i==sqrt(b))  x++;else x=x+2;}}cout<<x<<endl;}return 0;
}

2022寒假day2相关推荐

  1. 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分)

    文章目录 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分) 一.题目 二.题解 题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分) 一.题目 二.题解 我这个做法 ...

  2. CF 2022寒假练习

    CF 2022寒假练习 CF_2A Winner 链接 CF_2A Winner 题目大意 有一个游戏,由nnn个玩家参与,每一轮会有一个玩家获得sss点数.游戏最后一轮结束后,点数最多的玩家获胜.如 ...

  3. 2022寒假---冲冲冲~

    在经过学校以及各级政府的努力,终于将我安全的送回家,感激学校,感恩党和政府! 寒假会将C语言的最后一部分学完,然后陆续学习C++和C的基础数据结构~~~道阻且长! 如果还有时间,还可以在搞点pr之类的 ...

  4. 2022——寒假总结

    文章目录 背景 报名 摸索 结果 总结 背景 大一上学期,刚上大学没有尽快适应,什么都没有学到. 因为疫情,所以平时的测试以及期末都是线上进行的,就没怎么认真学,网课直接划水. 我的生活与学习很不平衡 ...

  5. 【2022寒假基础集训】第一场 - B.炸鸡块君与FIFA22【倍增DP+集合分类】

    Date:2022.04.27 题目描述: 热爱足球(仅限游戏)的炸鸡块君最近购买了FIFA22,并且沉迷于FIFA22的Rivals排位上分. 在该排位系统中,每局游戏可能有胜利(用W表示).失败( ...

  6. 【2022寒假基础集训】第二场 -L/M.小沙的remake【BIT+DP】

    Date:2022.03.12 题目描述: 小沙的人生充满坎坷,他现在准备remake,在新的人生中他想要自己的人生一帆风顺,步步高升,所以他希望自己的气运不会下降,他的新的人生,活的时间可以不长,但 ...

  7. 【2022寒假基础集训】第二场 -LM.小沙的remake【BIT+DP】

    Date:2022.03.12 题目描述: 小沙的人生充满坎坷,他现在准备remake,在新的人生中他想要自己的人生一帆风顺,步步高升,所以他希望自己的气运不会下降,他的新的人生,活的时间可以不长,但 ...

  8. 【2022寒假基础集训】第二场 - G.小沙的身法【树上差分+LCA】

    Date:2022.04.28 题目描述 小沙发现他打球打不赢别人,打架也打不赢别人,所以他去了少林寺学习身法,以求打球的时候可以跑的更快,打架的时候也可以跑的更快(bushi). 少林寺的方丈告诉小 ...

  9. 2022寒假字节跳动前端训练营笔记

    已经完成的部分 Day02 如何写好JS - 月影 Day04-2 前端动画实现 - 蒋翔 Day08-1 TypeScript入门 - 林皇 Day09-2 前端设计模式应用 - 吴立宁 Day04 ...

最新文章

  1. linux虚拟机下安装Tomcat
  2. TensorFlow 2.0发布在即,高级API变化抢先看
  3. 重磅突发!全球首富40颗卫星遭摧毁
  4. 外卖行业现状分析_2019年中国外卖行业市场现状与发展趋势分析 用户市场渐趋下沉【组图】...
  5. linux ftp服务器搭建及用户的分配,Linux搭建FTP服务器
  6. Leet Code OJ 27. Remove Element [Difficulty: Easy]
  7. 数组-slice、indexOf
  8. hashmap 扩容是元素还是数组_HashMap 中的容量与扩容实现
  9. java arraylist string_在Java ArrayList String中使用contains
  10. Oracle010316,安装oracle后登录时出现 ERROR: ORA-01031 insufficient privileges
  11. java 柱状图jar_GitHub - mafulong/NetworkExper: 计网实验,抓包,java,jigloo界面开发,柱状图,文件自定义保存...
  12. bzoj 4709: [Jsoi2011]柠檬(分段DP+决策单调性)
  13. 犀牛Rhinoceros 7 for Mac(三维建模软件)
  14. TTL232和RS232的区别
  15. html标签设计视频音量,如何在HTML5视频标签只添加音量控制
  16. 英语发音规则---ea字母组合发音规律
  17. 刨根究底字符编码之四——EASCII及ISO 8859字符编码方案
  18. Microsoft edge升级之后收藏夹内容丢失_再见了,老Edge,再见了,Microsoft Edge
  19. Android 双击退出和单击回到桌面
  20. android开发笔记之锁屏界面未读短信未接来电提醒(android 4.4)

热门文章

  1. ssm+JSP计算机毕业设计疫情救灾物资管理系统6pdz4【源码、程序、数据库、部署】
  2. 嵌入式学习-----keil的安装
  3. 浅谈【漏洞复现】泛微ecology OA系统某接口存在数据库配置信息泄露漏洞
  4. W3Cschool编程实战答案之JavaScript
  5. 银行打来的电话可以不接吗?有一类人必须接听
  6. python盘整之路
  7. VC2008 不能将参数 从“CString”转换为“const wchar_t *” 问题
  8. Nacos出现重大安全漏洞,开源项目险遭脱库
  9. 计算机录屏幕和声音的软件是什么,可以录制屏幕视频声音的电脑录屏软件是什么?...
  10. linux学习笔记二