CodeForces April Fools Contest 2018


                                                                   愚人节的题确实挺愚人的...

A. Quirky Quantifiers


AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
  int n;
  cin>>n;
  if(n%2)printf("1\n");
  else printf("0\n");
  return 0;
}


B. A Map of the Cat

       这一道交互式的题,对于什么是交互式可以看下这个:http://codeforces.com/blog/entry/45307


AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
  string str;
  for(int i=0;i<9;i++){
    cout<<i<<endl;
    getline(cin,str);
    if(str == "no")continue;
    else{
      if(str == "great" || str == "cool" ||str == "don't think so" || str == "not bad" || str == "don't touch me" ){
        printf("normal\n");
      }
      else{
        printf("grumpy\n");
      }
    }
  }
  return 0;
}


C. Ravioli Sort

        题目描述了一个面条排序,我也就顺手搜了一下,又了解了睡眠排序什么的各种脑洞大开的排序方法,发现人的想象力真的是无穷的。然而这道题跟面条排序并有什么关系。题目说相邻两个数相差大于2的话,大的哪个数就会减少一部分给小的数,使得二者相等,那么只要存在相邻数大于等于2的就是No了。


AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
  int n;
  cin>>n;
  int pre[100005];
  for(int i=0;i<n;i++){
    cin>>pre[i];
  }
  int flag = 0;
  for(int i=0;i<n-1;i++){
    if(abs(pre[i] - pre[i+1]) >= 2){
      flag = 1;
      break;
    }
  }
  if(!flag) printf("YES\n");
  else printf("NO\n");
  return 0;
}


D. I'm Feeling Lucky!

     这道题就是让你赌数据,看图中我们可以押"Odd","Even","red","black",碰运气了,反正我是交了好多发red都没过,一次black就过了。


AC代码:

#include <iostream>
using namespace std;
int main()
{  
    printf("black\n");
    return 0;
}


E. Cheese Board

       宏定义Min和Max的时候一定记得要加上括号!!这道题就因为没加括号就TLE了。


AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#define Min(a,b) ((a>b)?(b):(a))
#define Max(a,b) ((a>b)?(a):(b))
using namespace std;
int main()
{
  int n,ans1=0,ans2=0;
  scanf("%d",&n);
  while(n--){
    string s1,s2;
    cin>>s1>>s2;
    if(s2 == "soft")ans1++;
    else ans2++;
  }
  int sum = 0;
  while((sum * sum) / 2 < Min(ans1,ans2) || (sum * sum + 1 ) / 2 < Max(ans1,ans2)){
    sum++;
  }
  printf("%d\n",sum);
  return 0;
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值