关于puts和cout
  • 板块学术版
  • 楼主littlejuruo
  • 当前回复1
  • 已保存回复1
  • 发布时间2020/11/29 15:08
  • 上次更新2023/11/5 07:05:47
查看原帖
关于puts和cout
86815
littlejuruo楼主2020/11/29 15:08

昨天月赛的Div2B 我一开始的程序是

#include<bits/stdc++.h>
#define int long long 
using namespace std;

void file(string s){freopen((s+".in").c_str(),"r",stdin),freopen((s+".out").c_str(),"w",stdout);}
int read(){
	int f=1,a=0;
	char ch=getchar();
	while(ch<'0'||ch>'9'){
		if(ch=='-')f=-f;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		a=a*10+ch-'0';
		ch=getchar();
	}
	return a*f;
}

signed main(){
//  file("");
	ios::sync_with_stdio(0);
	int n=read(),m=read(),k=read(),p=read();
	int maxn=k/p,rest=k-maxn*p;
	if(p==n){
		if(k%n==0){
			puts("YES");
			for(int i=1;i<=n;++i){
				cout<<k/n<<' '<<m-k/n<<'\n';
			}
		}else{
			puts("NO");
		}
		return 0;
	}
	if(maxn>m){
		maxn=m,rest=k-maxn*p;
	}
	int rtot=rest/(n-p),addtot=rest%(n-p);
	if(rtot>maxn-1||(rtot==maxn-1&&addtot!=0)){
		puts("NO");
		return 0;
	}
	puts("YES");
	for(int i=1;i<=p;++i){
		cout<<maxn<<' '<<m-maxn<<'\n';
	}
	for(int i=p+1;i<=n;++i){
		if(addtot!=0){
			cout<<rtot+1<<' '<<m-(rtot+1)<<'\n';
			addtot--;
		}else{
			cout<<rtot<<' '<<m-rtot<<'\n';
		}
	}
	
	return 0;
}

WA了将近一半

但当我把所有的puts改为cout

就能AC了

记录在此

敢问有哪位巨佬知道这是什么神奇的feature??

2020/11/29 15:08
加载中...