有点难绷,关于程序中只有字符串输出却输出了数字
  • 板块灌水区
  • 楼主AzureHair
  • 当前回复8
  • 已保存回复8
  • 发布时间2023/3/14 15:59
  • 上次更新2023/10/23 21:35:33
查看原帖
有点难绷,关于程序中只有字符串输出却输出了数字
557510
AzureHair楼主2023/3/14 15:59
#include<cstdio>
#include<iostream>
using namespace std;
int n,m,f[2000010],t;
int main()
{
	cin>>n>>m>>t;
	f[0]=0;f[1]=2;f[2]=1;
	int i=1,j=2;
	while(i<=1000000)
	{
		if(f[i+1])
		{
			f[i+2]=f[i]+3;
			f[j+3]=f[j]+2;
			i+=2;j+=3;
		}
		else
		{
			f[i+1]=f[i]+2;
			f[j+2]=f[j]+1;
			i+=1;j+=2;
		}
	}
	for(int k=1;k<=t;k++)
	{	
		int x,y;
		cin>>x>>y;
		if(f[x]==y)
		{
			cout<<"Farmer John"<<endl;
		}
		else
		{
			cout<<"Bessie"<<endl;
		}
	}
	return 0;
}

这是我写的P3024的代码,但是当我在电脑上编译运行时却出现了问题
我的输入:
3 3
1
1 1
此时按理应当输出结果但是他没有输出
随后又输入了
1 1
结果输出了8
全代码没有出现一个数字的输出,但是最后输出了一个数字?!
随后在机房的不同电脑上运行这个程序得到了同样的结果
后来把程序搬到洛谷IDE上运行输出正确的结果Bessie
又运行了编译后的可执行文件也输出了正确的结果
经过同机房的同学的认真讨论,把U盘中的程序复制下来保存的电脑上然后程序输出了正确的结果
虽然不知道为什么但是属实有点难绷

2023/3/14 15:59
加载中...