CF Round#617(A B 。。。=_=)

来源:互联网 发布:淘宝上iphone se 编辑:程序博客网 时间:2024/06/07 02:57

A:简单的写数学题:=_=
从原点到N点(同一水平线)需要走的最少步数,每次只能走1.2.3.4.5步

题目链接:http://codeforces.com/problemset/problem/617/B

#include<bits/stdc++.h>using namespace std;int main(){    int n;    while(~scanf("%d",&n))    {        int num1,num2,num3,num4,num5;        num1=n/5;        num2=(n-num1*5)/4;        num3=(n-num2*4-num1*5)/3;        num4=(n-num3*3-num2*4-num1*5)/2;        num5=n-num4*2-num3*3-num2*4-num1*5;        printf("%d\n",num1+num2+num3+num4+num5);    }    return 0;}

B:题:由01组成的长度为n的序列,对该序列进行划分,使得每
一小部分都有一个1, (乘法原理,)
注意输出要用int64,

#include<bits/stdc++.h>using namespace std;int main(){    int n,x;    while(~scanf("%d",&n)){        int p=-1;        __int64 num=1;        for(int i=0;i<n;i++){            scanf("%d",&x);            if(x){              if(p!=-1)                num*=(i-p);               p=i;            }        }        if(p==-1)          printf("0\n");        else            printf("%I64d\n",num);    }    return 0;}果然不行啊,自己还是太弱了,,=_=!!!,以后还得多多练习才是。
0 0
原创粉丝点击