AtCoder Beginner Contest 071
第二次打日服。。。
感觉比较水。因为聚会的原因,还几十分钟结束的时候才打开电脑。
D题就没看。难度不知。
题目链接http://abc071.contest.atcoder.jp/
ABC都水题。
C题因为数据比较大,不知道为什么用long long 有点问题,赛后发现是x,y用的是int 相乘会溢出了。比赛的时候用的是大数乘法。
A题代码:
1 #include<iostream>
2 #include<stdio.h>
3 #include<algorithm>
4 #include<string.h>
5 #include<math.h>
6 using namespace std;
7 int main(){
8 int a,b,x;
9 while(~scanf("%d%d%d",&x,&a,&b)){
10 int alen=abs(a-x);
11 int blen=abs(b-x);
12 if(alen>blen)cout<<'B'<<endl;
13 else cout<<'A'<<endl;
14 }
15 return 0;
16 }
B题代码:
#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<math.h>
using namespace std;
int flag[30];
int main(){
char s[100500];
cin>>s;
memset(flag,0,sizeof(flag));
for(int i=0;i<strlen(s);i++){
flag[s[i]-'a']++;
}
int cnt=0;
for(int i=0;i<26;i++){
if(flag[i]==0){
cout<<(char)(i+'a')<<endl;
cnt++;
break;
}
}
if(!cnt) cout<<"None"<<endl;
return 0;
}
C题代码:
1 /*
2 改后的代码
3 */
4 #include<iostream>
5 #include<stdio.h>
6 #include<string.h>
7 #include<algorithm>
8 using namespace std;
9 long long int a[100500];
10 int flag[100500];
11 bool cmp(int a,int b){
12 return a>b;
13 }
14 int main(){
15 int n;
16 cin>>n;
17 for(int i=0;i<n;i++){
18 scanf("%d",a+i);
19 }
20 memset(flag,0,sizeof(flag));
21 sort(a,a+n,cmp);
22 long long int x,y;
23 x=y=0;
24 int fg=0;
25 for(int i=0;i<n-1;i++){
26 if(a[i]==a[i+1]&&!flag[i]){
27 if(!x) x=a[i];
28 else{
29 y=a[i];
30 break;
31 }
32 flag[i]=1;
33 flag[i+1]=1;
34 }
35 }
36 long long int sum;
37 sum=x*y;
38 cout<<sum<<endl;
39 return 0;
40 }
1 /*
2 大数乘法代码
3 */
4 #include<iostream>
5 #include<stdio.h>
6 #include<string.h>
7 #include<algorithm>
8 using namespace std;
9 int a[100500];
10 int flag[100500];
11 bool cmp(int a,int b){
12 return a>b;
13 }
14 string sum(string s1,string s2)
15 {
16 if(s1.length()<s2.length())
17 {
18 string temp=s1;
19 s1=s2;
20 s2=temp;
21 }
22 int i,j;
23 for(i=s1.length()-1,j=s2.length()-1;i>=0;i--,j--)
24 {
25 s1[i]=char(s1[i]+(j>=0?s2[j]-'0':0)); //注意细节
26 if(s1[i]-'0'>=10)
27 {
28 s1[i]=char((s1[i]-'0')%10+'0');
29 if(i) s1[i-1]++;
30 else s1='1'+s1;
31 }
32 }
33 return s1;
34 }
35 string Mult(string s,int x)
36 {
37 reverse(s.begin(),s.end());
38 int cmp=0;
39 for(int i=0;i<s.size();i++)
40 {
41 cmp=(s[i]-'0')*x+cmp;
42 s[i]=(cmp%10+'0');
43 cmp/=10;
44 }
45 while(cmp)
46 {
47 s+=(cmp%10+'0');
48 cmp/=10;
49 }
50 reverse(s.begin(),s.end());
51 return s;
52 }
53 string Multfa(string x,string y) //大数乘法
54 {
55 string ans;
56 for(int i=y.size()-1,j=0;i>=0;i--,j++)
57 {
58 string tmp=Mult(x,y[i]-'0');
59 for(int k=0;k<j;k++)
60 tmp+='0';
61 ans=sum(ans,tmp);
62 }
63 return ans;
64 }
65 int main(){
66 int n;
67 cin>>n;
68 for(int i=0;i<n;i++){
69 scanf("%d",a+i);
70 }
71 memset(flag,0,sizeof(flag));
72 sort(a,a+n,cmp);
73 int x,y;
74 x=y=0;
75 int fg=0;
76 for(int i=0;i<n-1;i++){
77 if(a[i]==a[i+1]&&!flag[i]){
78 if(!x) x=a[i];
79 else{
80 y=a[i];
81 break;
82 }
83 flag[i]=1;
84 flag[i+1]=1;
85 }
86 }
87 char x1[15],y1[15];
88 sprintf(x1,"%d",x);
89 sprintf(y1,"%d",y);
90 string s=Multfa(x1,y1);
91 cout<<s<<endl;
92 return 0;
93 }
这代码长度~汗~
AtCoder Beginner Contest 071的更多相关文章
- AtCoder Beginner Contest 071 D - Coloring Dominoes
Problem Statement We have a board with a 2×N grid. Snuke covered the board with N dominoes without o ...
- AtCoder Beginner Contest 071 ABCD
1001 求个绝对值比较大小喽 1002 把字符串出现的字母记录一下,然后遍历a-z,谁第一个没出现就输出谁 1003 Problem Statement We have N sticks with ...
- AtCoder Beginner Contest 100 2018/06/16
A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...
- AtCoder Beginner Contest 052
没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...
- AtCoder Beginner Contest 053 ABCD题
A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...
- AtCoder Beginner Contest 136
AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...
- AtCoder Beginner Contest 137 F
AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...
- AtCoder Beginner Contest 076
A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...
- AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】
AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...
- AtCoder Beginner Contest 064 D - Insertion
AtCoder Beginner Contest 064 D - Insertion Problem Statement You are given a string S of length N co ...
随机推荐
- 非全自研可视化表达引擎-RuleLinK
说在前面 工作中经常会遇到这样的场景: 帮忙把小贝拉门店 商品金额在5w以内,产康订单最多95折. 帮忙把圣贝拉门店 开业时间在6个月内,折扣低于7折要发起审批 帮忙把宁波太平洋店设置独立合同模板 帮 ...
- 一款国产开源 Web 防火墙神器!
随着开源 Web 框架和各种建站工具的兴起,搭建网站已经是一件成本非常低的事情,但是网站的安全性很少有人关注,以至于 WAF 这个品类也鲜为人知. 一.WAF 是什么? WAF 是 Web 应用防火墙 ...
- C# Wke使用例子 (KyozyWke)
概述 wke是国人大牛BlzFans封装的webkit, 基于chrome浏览器源代码的裁剪版本, 大小只有仅仅10M. 无需依赖其他的扩展库就可以在本地使用谷歌内核快速加载网页. wke是2011年 ...
- Spring Bean 的作用域(Bean Scope)
前言 大家好,我是 god23bin,今天我们来聊一聊 Spring 框架中的 Bean 作用域(Scope). 什么是 Bean 的作用域? 我们在以 XML 作为配置元数据的情况下,进行 Bean ...
- Redis 命令工具
--- Redis 命令工具 --- redis-server Redis 服务器启动命令 redis-cli shutdown 停止服务 redis-benchmark:性能测试工具,用于检测 Re ...
- 解决Dependency 'fastdfs-client-java’not found
如何能把 fastdfs的jar包安装到本地的仓库中(因为中央仓库没有FASTDFS的jar包地址) 1.首先去github上下载下来fastdfs的压缩包 下载链接 然后直接解压出来 2.使用cmd ...
- 11g编译bbed
报错如下: make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed Linking BBED utility (bbed) rm -f /u01/app/or ...
- math库常用函数+产生随机数总结
math库常用函数+产生随机数总结 1.对x开平方 double sqrt(x)://返回值为double类型,输入的x类型随意,只要是数的类型 2.求常数e的x次方 double exp(x);// ...
- linux系统centos7安装docker
1.Docker官网安装地址 https://docs.docker.com/engine/install/centos/#prerequisites 2.离线安装下载地址 https://downl ...
- 【iOS开发】iOS App的加固保护原理:使用ipaguard混淆加固
摘要 在开发iOS应用时,保护应用程序的安全是非常重要的.本文将介绍一种使用ipaguard混淆加固的方法来保护iOS应用的安全.通过字符串混淆.类名和方法名混淆.程序结构混淆加密以及反调试.反注 ...