出题人在数据里面加了一些EOF,修改版读优可过
查看原帖
出题人在数据里面加了一些EOF,修改版读优可过
62691
_King__楼主2018/9/4 21:58

正常的读优过不去。 因为数据里利用了scanf/cin读到EOF后会视为读了一个数,不会改变读入的变量的特性。具体请看代码。

//Code by King!
//#include<math.h>
#include<vector>
#include<iostream>
#include<time.h>
#include<algorithm>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int red()
{
    int x=0,w=1;
    char a=getchar();
    while(a<'0'||a>'9')
    {
    	if(a==EOF)
    		return -1;
        //w=(a=='-' ? -1:1);
        a=getchar();
    }
    while(a>='0'&&a<='9')
    {
        x=x*10+a-'0';
        a=getchar();
    }
    return x*w;
} 
int n,m,k,b,c;
int main()
{
//	freopen(".in","r",stdin);freopen(".out","w",stdout);
    int sm;
    scanf("%d%d%d",&n,&k,&m);
    for(int i=1;i<=k;i++)
    {
    	sm=0;
        if((sm=red())==-1)
        	sm=c;
        c=sm;
        	//return 0;
        int s=0;
        int j=sm;
        while(sm--)
        {
        	int a=0;
            if((a=red())==-1)
            	a=b;
            b=a;
            	//return 0;
            s+=a;
        }
        printf("%d\n",s%(n+1)+1);
    }
//	fclose(stdin);fclose(stdout);
    return 0;
}

2018/9/4 21:58
加载中...