愚人节的题确实挺愚人的...
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;
}