四校训练 warm up 14
A:Pythagoras's Revenge
代码:
#include<cstdio>
#define ll long long
using namespace std;
int main()
{
ll a;
while(scanf("%lld",&a)!=EOF)
{
if (a==) break;
ll aa=a*a;
int ans=;
for(ll i=;i<a;i++)
{
ll x=i;
if (aa%i!=) continue;
ll y=aa/i;
if ((x+y)*(y-x)%!=) continue;
if ((y-x)/>a) ans++;
}
printf("%d\n",ans);
}
return ;
}
B:Digit Solitaire
代码:
#include<cstdio>
using namespace std; int main()
{
int b;
while(scanf("%d",&b)&&b)
{
printf("%d",b);
while(b/>)
{
int tmp=;
while(b>)
{
tmp*=b%;
b/=;
}
b=tmp;
printf(" %d",tmp);
}
printf("\n");
}
return ;
}
C:Any Way You Slice It
计算几何
代码:
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#define maxn 150
#define pi acos(-1)
#define eps 1e-5
using namespace std; struct point
{
double x,y;
point(double x=,double y=):x(x),y(y){}
} p[maxn];
point operator-(point a,point b){return point(a.x-b.x,a.y-b.y);}
double cross(point a,point b){return a.x*b.y-a.y*b.x;}
int dcmp(double x)
{
if(fabs(x)<eps)return ;
else return x<?-:;
}
bool xiangjiao(point a1,point a2,point b1,point b2)
{
double c1=cross(a2-a1,b1-a1),c2=cross(a2-a1,b2-a1);
double c3=cross(b2-b1,a1-b1),c4=cross(b2-b1,a2-b1);
return dcmp(c1)*dcmp(c2)<&&dcmp(c3)*dcmp(c4)<;
} int main()
{
int n;
double d,x;
while(scanf("%d",&n)&&n)
{
bool flag=;
int ans=;
p[]= point(,);
double ang=pi/;
for(int i=; i<n; i++)
{
scanf("%lf%lf",&d,&x);
ang+=d/*pi;
p[i+].x=p[i].x+cos(ang)*x;
p[i+].y=p[i].y+sin(ang)*x;
if(i>&&flag==)
{
for(int j=; j<i; j++)
{
if(xiangjiao(p[j],p[j+],p[i],p[i+])==)
{
flag=;
ans=i+;
}
}
} }
if(flag==)puts("SAFE");
else printf("%d\n",ans);
}
return ;
}
D:Is the Name of This Problem
代码:
#include<cstdio>
#include<cstring>
#include<string>
#include<iostream>
#define maxn 109
using namespace std; char s1[maxn];
char s2[maxn];
int main()
{
// freopen("in.txt","r",stdin);
while(gets(s1))
{
bool flag=;
memset(s2,,sizeof s2);
if(s1[]=='E'&&s1[]=='N'&&s1[]=='D'&&!s1[])break;
int l=strlen(s1);
if(s1[]!='\"')
{
puts("not a quine");
continue;
}
int i,cnt=;
for(i=; i<l; i++)
{
if(s1[i]=='\"')break;
s2[cnt++]=s1[i];
}
if(cnt==)
{
puts("not a quine");
continue;
}
i++;
if(s1[i]!=' ')
{
flag=;
}
i++;
int j=;
for(;j<cnt;j++)
{
if(s2[j]>='A'&&s2[j]<='Z')continue;
else if(s2[j]==' ')continue;
else
{
flag=;break;
}
}
j=;
for(;i<l;i++)
{
if(s1[i]!=s2[j])
{
flag=;break;
}
j++;
if(j>cnt){flag=;break;}
}
if(j<cnt)flag=;
if(flag)printf("Quine(%s)\n",s2);
else puts("not a quine");
}
return ;
}
#include<cstdio>
#include<cstring>
#include<string>
#include<iostream>
#define maxn 109
using namespace std; char s1[maxn];
char s2[maxn];
int main()
{
// freopen("in.txt","r",stdin);
while(gets(s1))
{
bool flag=;
memset(s2,,sizeof s2);
if(s1[]=='E'&&s1[]=='N'&&s1[]=='D'&&!s1[])break;
int l=strlen(s1);
if(s1[]!='\"')
{
puts("not a quine");
continue;
}
int i,cnt=;
for(i=; i<l; i++)
{
if(s1[i]=='\"')break;
s2[cnt++]=s1[i];
}
if(cnt==)
{
puts("not a quine");
continue;
}
i++;
if(s1[i]!=' ')
{
flag=;
}
i++;
int j=;
for(;j<cnt;j++)
{
if(s2[j]>='A'&&s2[j]<='Z')continue;
else if(s2[j]==' ')continue;
else
{
flag=;break;
}
}
j=;
for(;i<l;i++)
{
if(s1[i]!=s2[j])
{
flag=;break;
}
j++;
if(j>cnt){flag=;break;}
}
if(j<cnt)flag=;
if(flag)printf("Quine(%s)\n",s2);
else puts("not a quine");
}
return ;
}
F:LRU Caching
代码:
#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 1000009
using namespace std;
int frecount;
int n;
struct node
{
int id;
int fre;
bool operator <(const node &t)const
{
return fre<t.fre;
}
} no[]; void shuchu()
{
sort(no,no+n);
for(int i=; i<n; i++)
{
if(no[i].id>)
printf("%c",no[i].id+'A'-);
}
puts("");
} void add(char s)
{
bool flag=;
frecount++;
for(int i=; i<n; i++)
if(no[i].id==s-'A'+)
{
no[i].fre=frecount;
flag=;
break;
}
if(flag==)
{
sort(no,no+n);
no[].id=s-'A'+;
no[].fre=frecount;
}
} char s[maxn]; int main()
{
// freopen("in.txt","r",stdin);
int ca=;
while(scanf("%d",&n)&&n)
{
printf("Simulation %d\n",ca++);
frecount=;
for(int i=; i<n; i++)
{
no[i].id=-;
no[i].fre=-;
}
scanf("%s",s);
int l=strlen(s);
for(int i=; i<l; i++)
{
if(s[i]=='!')
shuchu();
else add(s[i]);
}
}
return ;
}
G:Jugglefest
代码:
#include<cstdio>
#include<cstring>
using namespace std;
int p[];
char s[];
int main()
{
// freopen("in.txt","r",stdin);
int n;
while(scanf("%d",&n)&&n)
{
bool flag=;
memset(p,,sizeof p);
memset(s,,sizeof s);
for(int i=; i<n; i++)
{
scanf("%d",&p[i]);
}
int cnt=,num=;
for(int i=; i<; i++)
{
if(s[i]==)s[i]='A'+cnt++;
if(s[i+p[num%n]]!=&&(i+p[num%n]<))flag=;
else s[i+p[num%n]]=s[i];
num++;
}
if(flag)
{
for(int i=;i<;i++)
putchar(s[i]);
puts("");
}
else puts("CRASH");
}
return ;
}
四校训练 warm up 14的更多相关文章
- HDU6621 K-th Closest Distance HDU2019多校训练第四场 1008(主席树+二分)
		
HDU6621 K-th Closest Distance HDU2019多校训练第四场 1008(主席树+二分) 传送门:http://acm.hdu.edu.cn/showproblem.php? ...
 - HDU6578 2019HDU多校训练赛第一场 1001 (dp)
		
HDU6578 2019HDU多校训练赛第一场 1001 (dp) 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6578 题意: 你有n个空需要去填,有 ...
 - [源码解析] 深度学习分布式训练框架 horovod (14) --- 弹性训练发现节点 & State
		
[源码解析] 深度学习分布式训练框架 horovod (14) --- 弹性训练发现节点 & State 目录 [源码解析] 深度学习分布式训练框架 horovod (14) --- 弹性训练 ...
 - HDU6579 2019HDU多校训练赛第一场1002 (线性基)
		
HDU6579 2019HDU多校训练赛第一场1002 (线性基) 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6579 题意: 两种操作 1.在序列末 ...
 - HDU 4902 Nice boat  2014杭电多校训练赛第四场F题(线段树区间更新)
		
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4902 解题报告:输入一个序列,然后有q次操作,操作有两种,第一种是把区间 (l,r) 变成x,第二种是 ...
 - 2018牛客网暑假ACM多校训练赛(第四场)B Interval Revisited 动态规划
		
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round4-B.html 题目传送门 - https://www.no ...
 - 2018牛客网暑假ACM多校训练赛(第四场)C Chiaki Sequence Reloaded (组合+计数) 或 数位dp
		
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round4-C.html 题目传送门 - https://www.no ...
 - 2018牛客网暑假ACM多校训练赛(第四场)E Skyline 线段树 扫描线
		
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round4-E.html 题目传送门 - https://www.no ...
 - 2018牛客网暑假ACM多校训练赛(第四场)A Ternary String 数论
		
原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round4-A.html 题目传送门 - https://www.no ...
 
随机推荐
- Git使用完全解析(一)
			
是时候来系统的介绍一下Git了.毫无疑问,Git是目前最优秀的分布式版本控制工具,木有之一,可是我见到的很多人还是不会用,我的老东家每天忍受着SVN带来的痛苦,却迟迟不愿切换到Git上,个人感觉,许多 ...
 - 循环json里面的数据
			
{{each company as cvalue i}} {{each value.Goods as gvalue i}} {{each gvalue.SKU as value i}} ...
 - 更靠谱的js判断浏览器及其版本
			
所有的前端开发人员都没有办法回避一个问题,那就是浏览器版本判断,当我们无法回避需要进行浏览器版本判断时,前辈们往往会告诉我们,可以判断 UserAgent这个用来标示浏览器的字符串,通过判断这一字符串 ...
 - 20160417javaweb之servlet监听器
			
监听器:监听器就是一个java程序,功能是监听另一个java对象变化(方法调用.属性变更) 8个监听器,分为了3种 写一个类实现响应的接口 注册监听器 -- 在web.xml中注册监听器 1.用来监听 ...
 - c语言学习之基础知识点介绍(十一):字符串的介绍、使用
			
本节主要介绍c语言中的字符串的应用. 一:字符串介绍 因为c语言中没有像Java.C#那样的字符串类型,所以无法直接用字符串.需要借助数组来解决这个问题. /* 定义:把多个字符连在一起就叫字符串.但 ...
 - Nagios-配置版
			
1 概念(简介) Nagios是插件式的结构,它本身没有任何监控功能,所有的监控都是通过插件进行的,因此其是高度模块化和富于弹性的.Nagios监控的对象可分为两类:主机和服务.主机通常指的是物理主 ...
 - stm32中.bss和.data段是在哪里初始化的
			
https://segmentfault.com/q/1010000004829859/a-1020000004850311 Q: STM32的启动文件startup_stm32f10x_hd.s中的 ...
 - 一、VSTO概述
			
一.什么是VSTO? VSTO = Visual Studo Tools for Office,是.net平台下的Office开发技术.相对于传统的VBA(Visual Basic Applicati ...
 - css样式继承 第7节
			
样式继承: <html> <head> <title>样式继承</title> <style type="text/css"& ...
 - 学习笔记---C++析构函数心得
			
1.动态分配的对象的析构函数 class man{ public: man(){ cout<<"man begin"<<endl; }; ~man(){ c ...