@sensitive-cs
        
        2016-10-04T08:44:45.000000Z
        字数 392
        阅读 873
    题意为n个人站一排,一个人的前面至少有a个人,后面至多有b个人,求此人可能的位置有多少种。
当满足n个人的条件时,让前面的人的个数从a增加到n,后面的人的个数从0增加到b,用一个flag标记共有多少种站法使得条件成立,最后输出flag。
#include <stdio.h>int m[111];int main(){int n,a,b;while (scanf("%d%d%d",&n,&a,&b) != EOF){int i,j,cal = 0;for (i = 1;i <= n;i++)m[i] = 6;for (i = a;i <= n;i++)for (j = 0;j <= b;j++){if (i+j+1 == n){m[i+1] = 8;}}for (i = 1;i <= n;i++){if (m[i] == 8)cal++;}printf("%d\n",cal);}return 0;}
