POJ 2265 Bee Maja G++ 找规律 巧妙 背

#include <iostream>
#include <cstdio>
using namespace std;
//英语     看博友分析     抄博友程序      找规律        巧妙       背 
int main()
{
	int a;
	while(cin>>a)
	{
		if(a==1)
		{
			cout<<0<<" "<<0<<endl;
			continue;
		}
		int n=0;//圈数 
		while(a>(3*n*n-3*n+1))//抄博友程序  关键 
		{
			n++;
		}
		n--;
		//cout<<n<<endl;
		a=a-(3*n*n-3*n+1);//抄博友程序   关键 
		//cout<<a<<endl;
		int x,y;
		if(a<=n)//抄博友程序   巧妙 
		{
			x=n-a; 
			y=a;
		}else if(n<a && a<=2*n)
		{
			x=-(a-n);
			y=n;
		}else if(n*2<a && a<=3*n)
		{
			x=-n;
			y=n-(a-2*n);
		}else if(n*3<a && a<=4*n)
		{
			x=-(n-(a-3*n));
			y=-(a-3*n);
		}else if(n*4<a && a<=5*n)
		{
			x=a-4*n;
			y=-n;
		}else
		{
			x=n;
			y=-(n-(a-5*n));
		}
		cout<<x<<" "<<y<<endl;
	}
	return 0; 
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值