April Fools Contest 2017 题解
趁着上课无聊,来补一补……
A. Numbers Joke
直接oeis就好了:http://oeis.org/search?q=numbers+joke&language=english&go=Search
#include<bits/stdc++.h>
using namespace std;
long long p[]={ 4, 22, 27, 58, 85, 94, 121, 166, 202, 265, 274, 319, 346, 355, 378, 382, 391, 438, 454, 483, 517, 526, 535, 562, 576, 588, 627, 634, 636, 645, 648, 654, 663, 666, 690, 706, 728, 729, 762, 778, 825, 852, 861, 895, 913, 915, 922, 958, 985, 1086, 1111, 1165};
int main(){
int n;
cin>>n;
cout<<p[n-1]<<endl;
}
B - Kids' Riddle
16进制中圈圈的个数。。。。
这TM谁猜得到(微笑)
#include<bits/stdc++.h>
using namespace std;
char getc(long long p){
if(p==10)return 'A';
if(p==11)return 'B';
if(p==12)return 'C';
if(p==13)return 'D';
if(p==14)return 'E';
if(p==15)return 'F';
return char(p+'0');
}
string get(long long x){
string s;
while(x){
s+=getc(x%16);
x/=16;
}
return s;
}
map<char,int> H;
int main(){
H['0']=1;
H['1']=0;
H['2']=0;
H['3']=0;
H['4']=1;
H['5']=0;
H['6']=1;
H['7']=0;
H['8']=2;
H['9']=1;
H['A']=1;
H['B']=2;
H['C']=0;
H['D']=1;
H['E']=0;
H['F']=0;
long long p;
cin>>p;
if(p==0){
cout<<"1"<<endl;
return 0;
}
string s = get(p);
int ans = 0;
for(int i=0;i<s.size();i++)
ans+=H[s[i]];
cout<<ans<<endl;
}
C. INTERCALC
FIND XOR OF LARGEST AND LAST ARRAY ELEMENTS
#include<bits/stdc++.h>
using namespace std;
int n,x,mx;
int main(){
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&x);
mx=max(x,mx);
}
cout<<(x^mx)<<endl;
}
D - Touchy-Feely Palindromes
给你个字符串,问你这个字符串在盲文的条件下,是否回文
#include<bits/stdc++.h>
using namespace std;
map<char,char>H;
string s;
int main(){
H['3']='3';
H['4']='6';
H['5']='9';
H['6']='4';
H['7']='7';
H['8']='0';
H['9']='5';
H['0']='8';
cin>>s;
int flag = 1;
for(int i=0;i<s.size();i++){
if(!H.count(s[i]))flag=0;
else{
if(H[s[i]]!=s[s.size()-1-i])
flag=0;
}
}
if(flag)cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
E - Twisted Circuit
给一个电路图,然后把OR门看成XOR门,把XOR门看成OR门就好了
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c,d;
cin>>a>>b>>c>>d;
int a1=a^b;
int b1=c|d;
int c1=b&c;
int d1=a^d;
int a2=a1&b1;
int b2=c1|d1;
cout<<(a2^b2)<<endl;
}
F - Crunching Numbers Just for You
必须运行超过1秒。。
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1000006;
int n,a[maxn];
int main(){
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(int i=n;i<maxn;i++){
a[i]=101;
}
for(int i=0;i<100;i++){
a[n+i]=102+i;
sort(a,a+maxn);
}
for(int i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
}
G. BF Calculator
写一个表达式,让你用brainfuck写出答案是多少。
#include<bits/stdc++.h>
using namespace std;
string s;
string get(int p){
if(p==0){
return "0";
}
int flag = 0;
if(p<0)flag=1,p=-p;
string tmp;
while(p){
tmp+=(p%10+'0');
p/=10;
}
if(flag)tmp+='-';
reverse(tmp.begin(),tmp.end());
return tmp;
}
int main(){
cin>>s;
int now = 0;
int num = 0;
int flag = 0;
for(int i=0;i<s.size();i++){
if(s[i]=='+'||s[i]=='-'){
if(flag==0){
now+=num;
}
else{
now-=num;
}
if(s[i]=='+')
flag=0;
else
flag=1;
num=0;
}else{
num=num*10+(s[i]-'0');
}
}
if(flag==0){
now+=num;
}
else{
now-=num;
}
string ss = get(now);
for(int i=0;i<ss.size();i++){
for(int j=0;j<ss[i];j++){
cout<<"+";
}
cout<<".";
cout<<">"<<endl;
}
}
April Fools Contest 2017 题解的更多相关文章
- April Fools Contest 2017 题解&源码(A,数学 B,数学 C,数学 D,字符串 E,数字逻辑 F,排序,卡时间,G,数学)
A. Numbers Joke time limit per test:2 seconds memory limit per test:64 megabytes input:standard inpu ...
- Codeforces April Fools Contest 2017
都是神题,我一题都不会,全程听学长题解打代码,我代码巨丑就不贴了 题解见巨神博客 假装自己没有做过这套
- April Fools Contest 2017 F
Description You are developing a new feature for the website which sells airline tickets: being able ...
- April Fools Contest 2017 E
Description Input The input consists of four lines, each line containing a single digit 0 or 1. Outp ...
- April Fools Contest 2017 D
Description Input The only line of the input contains a string of digits. The length of the string i ...
- April Fools Contest 2017 C
Description DO YOU EXPECT ME TO FIND THIS OUT? WHAT BASE AND/XOR LANGUAGE INCLUDES string? DON'T BYT ...
- April Fools Contest 2017 B
Description Programmers' kids solve this riddle in 5-10 minutes. How fast can you do it? Input The i ...
- April Fools Contest 2017 A
Description Input The input contains a single integer a (1 ≤ a ≤ 30). Output Output a single integer ...
- April Fools Contest 2018
这个比赛不正经,但是我可以一本正经的写代码啊 A. Quirky Quantifiers time limit per test 2 seconds memory limit per test 64 ...
随机推荐
- 边框回归(Bounding Box Regression)详解
原文地址:http://blog.csdn.net/zijin0802034/article/details/77685438 Bounding-Box regression 最近一直看检测有关的Pa ...
- python-pandas 高级功能(通过学习kaggle案例总结)
方法.iterrows()遍历循环df中的元素. for index,row in df.iterrows(): pass 更改df一个元素中的变量值. data1.set_value(index,' ...
- android 手机拍照返回 Intent==null 以及intent.getData==null
手机拍照第一种情况:private void takePicture(){ Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);Si ...
- python3中的编解码
#一个知识点是:python3中有两种字符串数据类型:str类型和 bytes类型:sty类型存储unicode数据,bytes类型存储bytes数据 #当我们在word上编辑文件的时候,数据保存之前 ...
- [转]Hadoop参数汇总
出自:https://segmentfault.com/a/1190000000709725 Hadoop参数大全 主要配置文件: core hdfs yarn mapred 重要性表示如下: 重要 ...
- 【splunk】启动停止
在控制台 splunk目录/bin下 ./splunk start #启动 ./splunk stop #停止 启动时出错,需要更改一下SPLUNK的配置 $SPLUNK_HOME/etc/splun ...
- Neural style transfer
网络风格迁移 作者:无用 本文通过学习吴恩达视频所做笔记 目录 简介 可视化卷积层 构建风格迁移网络 一.网络风格迁移简介 二.可视化卷积层 可视化深层卷积网络???这个问题我看过一篇文章,我会在后补 ...
- java StringTokenizer
在java引入正则表达式和Scanner类之前分割字符串的唯一方法是使用StringTokenizer来分词,不过现在有了正则表达式和Scanner类我们可以使用更加简单更加简洁的方式来完成同样的工作 ...
- Python 检测系统时间,k8s版本,redis集群,etcd,mysql,ceph,kafka
一.概述 线上有一套k8s集群,部署了很多应用.现在需要对一些基础服务做一些常规检测,比如: 系统时间,要求:k8s的每一个节点的时间,差值上下不超过2秒 k8s版本,要求:k8s的每一个节点的版本必 ...
- struts2之OGNL和struts2标签库和ValueStack对象
OGNL简介: (1)OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目. struts2框架默认就支持Ognl表达式语言(所以 ...