#505 1&2 A-C 后面未完成
A. Doggo Recoloring
题目意思是给一个字符串(都是小写字母),如果有两个字符相同,我们可以将这两个字符变成其他字符,问能不能使字符串字母都一样
思路 有两个相同字符时就能; 字符串长度为1时也可以。
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=3e6+;
const int INF=0x3f3f3f3f;
map<char,int> mp;
int32_t main()
{
int n; cin>>n;
if(n==) {cout<<"YES"<<endl; return ;}
string ss; cin>>ss;
int t=;
for(int i=;i<n;i++)
{
mp[ss[i]]++;
if(mp[ss[i]]==)
{
t=; break;
}
}if(t) cout<<"YES"<<endl; else cout<<"NO"<<endl;
}
A.cpp
B. Weakened Common Divisor
给你n对数字,让你求一个数 是每一对数中两个中任意一个数的非1因子;
有的话直接输出那个数,没有输出-1;
给出n<=1e5+5e4; ai,bi<=2e9;
直接找ai, bi 的因子 再看是不是 其他对数的因子,分析一下 n为1e5;
1e9 只有99个; 但是有一组很强的数据 735134400 1396755360 有2456 个因子(没有重复的) 直接超时了; cf 测评机太强了 改了一下 1.4s过了这个第45点。
最后还是超时在第84个点了
#pragma once
#include<iostream>
#include<cstdio>
using namespace std;
const int maxn=2e5+;
int vs[maxn];
int main()
{
int n; scanf("%d",&n);
int a,b;
int t=;
for(int i=;i<=n;i++)
{
scanf("%d %d",&a,&b);
if(i==)
{
int j;
for(j=;j*j<=a||j*j<=b;j++)
{
if(a%j==&&a/j!=) vs[++t]=a/j;
if(b%j==&&b/j!=) vs[++t]=b/j;
if( (b%j==||a%j==)&&j!=) vs[++t]=j;
}
}
else
{
int x=;
for(int j=;j<=t;j++)
{
if( (a>=vs[j]&&a%vs[j]==)||(b>=vs[j]&&b%vs[j]==) )
{
vs[++x]=vs[j];
}
}
t=x;
}
if(t==) { printf("%d\n",-); return ;}
}printf("%d\n",vs[]);
}
超时代码
再来考虑 2456 个因子 如果有 2 3 再来个 6 这样的数就不用放了,所以我们只要把质因数放进去就行了。
求2456个数的素因子; 应该是可以的;
#pragma once
#include<iostream>
#include<cstdio>
using namespace std;
const int maxn=2e5+;
int vs[maxn];
int main()
{
int n; scanf("%d",&n);
int a,b;
int t=;
for(int i=;i<=n;i++)
{
scanf("%d %d",&a,&b);
if(i==)
{
int j;
for(j=;j*j<=a||j*j<=b;j++)
{
if(a%j==&&a/j!=) vs[++t]=a/j;
if(b%j==&&b/j!=) vs[++t]=b/j;
if( (b%j==||a%j==)&&j!=) vs[++t]=j;
}
sort(vs+,vs+t+);
int x=;
for(int j=;j<=t;j++)
{
int w=;
for(int c=;c*c<=t;c++)
{ }
}
}
else
{
int x=;
for(int j=;j<=t;j++)
{
if( (a>=vs[j]&&a%vs[j]==)||(b>=vs[j]&&b%vs[j]==) )
{
vs[++x]=vs[j];
}
}
t=x;
}
cout<<t<<endl;
if(t==) { printf("%d\n",-); return ;}
}printf("%d\n",vs[]);
}
未完成代码
这个思路做不到的话 还有一个思路;
拿 17 18 为例子 他们的因数 2 3 6 9 18 1 17; 都是17*18的因数;
15 24来说 2 3 4 5 6 8 12 15 24 是 15*24的因数 或者说 15*24/gcd(15,24);
这两个例子的 最大公约数 gcd(17*18,15*24)=18; 即 17*18 与 25*24 不互质 存在一个约数;
所以n组 gcd的值不为1,为x>1; 就有约束 ; 还是x的因数;
是不是我们输出 x 就行了 答案是否;例如 2 17 2 17 ;答案是 2 或 14, 不是34;
我们就从2-sqrt(x)找因数 找不到才是gcd的值; 尽管这样 2-sqrt(x)的值还是很大;
要进一步缩小 g=max(gcd(g,a[1]),gcd(g,b[1])) 就有了和第一组数比较 ;
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=2e5+;
const int INF=0x3f3f3f3f;
int a[maxn];
int b[maxn];
int gcd(int a,int b){return b ? gcd(b, a%b): a; }
int32_t main()
{
int n; scanf("%lld",&n); int g=;
for(int i=;i<=n;i++)
{
scanf("%lld %lld",&a[i],&b[i]);
if(i==) g=a[i]*b[i];
else g=gcd(g,a[i]*b[i]);
} if(g==) { cout<<-<<endl; return ; }
g=max(gcd(g,a[]),gcd(g,b[]));//cout<<g<<endl;
for(int i=;i*i<=g;i++)
{
if(g%i==) {cout<<i<<endl; return ;}
}
cout<<g<<endl; return ;
}
B.cpp AC代码
C. Plasticine zebra
给你一个字符串 每一个点 我们可以执行 左边分别 第一个和最后一个。第二个和倒数第二个,第三.....。互换。右边也一样;然后把左边移到右边, 问你wb这样连续的字母最大有多少;
其实每次操作都是头尾相连 中间断开 ; 没看出来的可以倒看;
最后就是一个环 上找一点断开;找那个点断开 wb这样连续字母最大之
几个hack数据 bbbb 1 wbwb 4
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=3e6+;
const int INF=0x3f3f3f3f;
int32_t main()
{
string ss; cin>>ss; int k=ss.size();
ss=ss+ss;
int ans=;
int num=;
for(int i=;i<ss.size()-;i++)
{
if(ss[i]!=ss[i+]) num++;
else num=;
ans=max(ans,num);
}
cout<<min(k,ans)<<endl;
}
C.cpp
#505 1&2 A-C 后面未完成的更多相关文章
- [占位-未完成]scikit-learn一般实例之十一:异构数据源的特征联合
[占位-未完成]scikit-learn一般实例之十一:异构数据源的特征联合 Datasets can often contain components of that require differe ...
- [占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较
[占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较
- PIC12F508/505/509/510/506/519/526/527单片机破解芯片解密方法!
IC芯片解密PIC12F508/505/509/510/506/519/526/527单片机破解 单片机芯片解密型号: PIC12F508解密 | PIC12F505解密 | PIC12F506解密 ...
- 1Z0-053 争议题目解析505
1Z0-053 争议题目解析505 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 505.You configured the default backup device type ...
- 解决java代码测试http协议505错误
代码功能:通过java代码获取网页源代码: 所用工具:Myclipse8.5+tomcat6.0+浏览器 系统环境:windows xp旗舰版 火狐浏览器版本: IE浏览器版本: 测试http协议有错 ...
- 经验总结:HTTP返回505错误小记
昨天调试代码的时候,用http请求一个图片,返回的结果为如下: HTTP/1.1 505 HTTP Version Not Supported Server: Apache-Coyote/1.1 Da ...
- HTTP错误大全 404 200 501 502 505
HTTP错误 大全 403 401 400 404 304 200 HTTP 400 - 请求无效 HTTP 401.1 - 未授权:登录失败 HTTP 401.2 - 未授权:服务器配置问题导致登录 ...
- [未完成]WebService学习第一天学习笔记
[未完成]WebService学习第一天学习笔记[未完成]WebService学习第一天学习笔记
- [未完成]关于GUI Java图形化界
"笔记内容完成,整体未完成" GUI 图形化用户界面 用java做图形化用户界面的程序不多,大多用C++和defy.因为,Java做图形化效率低. 首先你要安装一个虚拟机,C++是 ...
随机推荐
- Use of undefined constant FTP_BINARY - assumed 'FTP_BINARY
用Laravel中的filesystems里面的ftp上传文件时报错.在windows上开发,文件上传的时候碰到上面的问题,搜了些资料,发现是php7的ftp拓展默认未开启. 第一步:检查extens ...
- docker图形化管理工具portainer
本章主要介绍docker的web图形化管理工具.这里使用 portainer(类似与dockui不过dockerui只支持单节点) 镜像名称 portainer/portainer 一.启动porta ...
- 获取音、视频时长(NAudio,Shell32,FFmpeg)
参考网址:https://blog.csdn.net/u013810234/article/details/57471780 以下为本次测试用到的音.视频格式: audio :”.wav;.mp3;. ...
- Object value iterator:值迭代器
// ES5 // 对于数组,使用标准的 for 循环,其实这种方式并不是在遍历值,而是遍历下标来指向值!ES5中增加了一些数组迭代器:forEach.every.some // forEach:遍历 ...
- Javascript this 的一些总结
1.1.1 摘要 相信有C/C++.C#或Java等编程经验的各位,对于this关键字再熟悉不过了.由于Javascript是一种面向对象的编程语言,它和C/C++.C#或Java一样都包含this关 ...
- Unity3D在C#编程中的一些命名空间的引用及说明
System包含用于定义常用值和引用数据类型.事件和事件处理程序.接口.属性和处理异常的基础类和基类.其他类提供支持下列操作的服务:数据类型转换,方法参数操作,数学计算,远程和本地程序调用,应用程序环 ...
- 【原创】imread () 函数 读入图片的例子
Reference Links Opencv+ qt5.1 完美配置 - 脚踏实地 - 博客频道 - CSDN.NET http://blog.csdn.net/xiaojidan2011/arti ...
- Mysql InnoDB三大特性-- 自适应hash index
Mysql InnoDB三大特性-- 自适应hash index
- debian系统下安装ssh
SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.利用 SSH 协议可以有效防止远程管理过程中 ...
- SQL-16 统计出当前各个title类型对应的员工当前薪水对应的平均工资。结果给出title以及平均工资avg。
题目描述 统计出当前各个title类型对应的员工当前薪水对应的平均工资.结果给出title以及平均工资avg.CREATE TABLE `salaries` (`emp_no` int(11) NOT ...