【洛谷 1338】 末日的传说

坑死了!!!

这是一道我自己想出来的题目!
算是贪心吧 洛谷搞什么鬼! 把 矩阵DP 贪心都放到数学里!!! 我想做数论啊 你给我这个!!

  • 开始我用的dfs 这是坑点!!! 以前我做过一个测试 深搜可以到6W 不会爆 这次是不是里面有if 之类的 4W3就爆掉了
    !!!!! 谨记 这种类似的 用循环写吧!!!
  • 还有 最初 把int 爆掉了 【欲哭无泪!!!
  • M竟然 还有=0的时候 【欲哭无泪+1
#include <cstdio>
#define LL long long
LL n,m,num[50000+10];
bool b[50000+10];
int main()
{
	scanf("%lld %lld",&n,&m);
	for(LL i=1;i<=n;i++)
		num[n-i+1]=i*(i-1)/2;
	int now=1;
	while(now<=n)
	{
		if(num[now+1]>=m)
			printf("%d ",now),b[now]=true,now++;
		else
		{
			printf("%d ",m-num[now+1]+now);
			b[m-num[now+1]+now]=true;
			break;
		}
	}
	for(int i=n;i>=1;i--) if(!b[i]) printf("%d ",i);
	return 0;
}
posted @ 2016-01-10 16:41  sxb_201  阅读(171)  评论(0编辑  收藏  举报