Codeforces Round #292 (Div. 2)

A:简单判断,首先得到最短到达Varda's home的步数s,如果step大于最短的s是偶数步则证明可以返回(Yes),否则(No)。

B:题目意思好判断,根据sample就可以得出,由于所给数据非常小,则直接可以暴力解决。

C:2->2 3->3 4->322 5->5 6->53 7->7 8->7222 9->7332得到这些,则可以直接在最后进行排序得出。

515A - Drazil and Date:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
using namespace std;
int main()
{
    long long a,b,c;
    cin>>a>>b>>c;
    if(a<0)
    a=-a;
    if(b<0)
    b=-b;
    if((c-a-b)%2==0&&c>=(a+b))
        cout<<"Yes"<<endl;
    else
        cout<<"No"<<endl;
    return 0;
}

515B - Drazil and His Happy Friends:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
using namespace std;
int main()
{
    int n,m;
    cin>>n>>m;
    int b,g,s[109],ss[109];
    memset(s,0,sizeof(s));
    memset(ss,0,sizeof(ss));
    cin>>b;
    for(int i=0;i<b;i++)
    {
        int a;
        cin>>a;
        s[a]=1;
    }
    cin>>g;
    for(int i=0;i<g;i++)
    {
        int c;
        cin>>c;
        ss[c]=1;
    }
    for(int i=0;i<=10000;i++)
    {
        if(s[i%n]==1||ss[i%m]==1)
        {
            s[i%n]=ss[i%m]=1;
        }
    }
    int sum=0;
    for(int i=0;i<n;i++)
    {
        if(!s[i])
        {
            sum++;
        }
    }
    for(int i=0;i<m;i++)
    {
        if(!ss[i])
        {
            sum++;
        }
    }
    if(sum)
        cout<<"No"<<endl;
    else
        cout<<"Yes"<<endl;
    return 0;
}
515C - Drazil and Factorial:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
#include<algorithm>
using namespace std;

char cmp(char a,char b)
{
    return a>b;
}
int main()
{
    int n;
    cin>>n;
    char s[105],ans[100000];
    cin>>s;
    for(int i=0;i<n;i++)
    {
        if(s[i]=='2'||s[i]=='3'||s[i]=='5'||s[i]=='7')
        {
            int tmp=strlen(ans);
            ans[tmp++]=s[i];
        }
        else if(s[i]=='4')
        {
            strcat(ans,"322");
        }
        else if(s[i]=='6')
        {
            strcat(ans,"53");
        }
        else if(s[i]=='8')
        {
            strcat(ans,"7222");
        }
        else if(s[i]=='9')
        {
            strcat(ans,"7332");
        }
    }
    sort(ans,ans+strlen(ans),cmp);
    cout<<ans<<endl;
    return 0;
}



你可能感兴趣的:(Codeforces Round #292 (Div. 2))