Codeforces Round #368 (Div. 2) A C

来源:互联网 发布:lims数据接口 编辑:程序博客网 时间:2024/05/06 13:03

大清早发现自己的rating涨了72分还是很高兴的,毕竟之前都是在掉分,还差9分才能到宝蓝啊,果然还是小菜鸡。

A Brain's Photos

大水题,要不是这个codeforces是外网太卡,提交等个半天,我想还是可以更快的

题意:一个n行m列的字符矩阵,由C,M,Y,W,G,B六个字符构成,当出现C,M,Y中的任何一种或多种时输出color,当只由W,G,B这三种的一种或者多种组成时,输出#Black&White。

代码如下:

#include<bits/stdc++.h>using namespace std;const int INF=0x3f3f3f3f;typedef long long LL;int main(){  int n;  scanf("%d",&n);  if(n<3)  {    printf("-1\n");  }  else  {    if(n%2)    {      LL a=n/2;      printf("%I64d %I64d\n",2*a*a+2*a,2*a*a+2*a+1);    }    else    {      LL a=n/2;      printf("%I64d %I64d\n",a*a-1,a*a+1);    }  }}
C Pythagorean Triples

这题有点意思,考你课外知识。

题意:告诉你一个直角三角形的一条边,问另外两条边是多少,全部都是整数。

思路:这是一个勾股数,关于勾股数的公式有:(2n+1,2n2+2n,2n2+2n+1)and  (2n,n2-1,n2+1),那么只要奇偶判断下就行了,当然数据应当写成long long。

代码如下:

#include<bits/stdc++.h>using namespace std;const int INF=0x3f3f3f3f;typedef long long LL;int main(){  int n;  scanf("%d",&n);  if(n<3)  {    printf("-1\n");  }  else  {    if(n%2)    {      LL a=n/2;      printf("%I64d %I64d\n",2*a*a+2*a,2*a*a+2*a+1);    }    else    {      LL a=n/2;      printf("%I64d %I64d\n",a*a-1,a*a+1);    }  }}




1 0
原创粉丝点击