3.22总结

一、deseq

!!!数据范围!!!

虽然说以前有一些题没有数据范围,但是现在它给了啊!!!总不能因为人家在后面就看不见吧 心心念念的数据范围终于有了我却错过了它(整整70ptsQAQ)再说事后想一想:根据逆序对总不能考n方的吧,那就是nlogn,那n的范围不就是1e5或1e6吗?不告诉范围也可以知道啊

以前因为看见数据范围太大而不敢切,现在因为不看数据范围而爆 int 。。。

二、mason

2^p的位数=log10(2^p)+1=p*log10(2)+1  万万没想到会在这里遇见它。其次我原本的打算是快速幂+高精度,但是标程的压位明显好很多:  先储存位数/10和%10,然后分别循环,每次*2,如果超某个较大数,则用 a[i+1] 加 a[i]/10,a[i]%=10。

#include
using namespace std;
int n,ans[510],mul[1010];

void solve(int n)
{
	if (n==0) return;
	solve(n/2);
	for (int i=1; i<=500; i++)
	{
		for (int j=1; j<=500; j++)
		{
			if (n%2==0) mul[i+j-1]+=ans[i]*ans[j];
			else mul[i+j-1]+=ans[i]*ans[j]*2;
		}
	}
	for (int i=1; i<=500; i++)
	{
		ans[i]=mul[i]%10;
		mul[i+1]+=mul[i]/10;
	}
	for (int i=1; i<=1000; i++) mul[i]=0;
}
int main()
{
	//freopen("mason.in","r",stdin);
	//freopen("mason.out","w",stdout);
	std::ios::sync_with_stdio(0);
	cin>>n;
	cout<=2; i--)
	{
		cout<

还有一个点:比如二分查找中我下面写的是if(a[l]==x) cout<<l; else if(a[r]==x) cout<<r;但是上面while内些成了  while(l<r)

三、问题

  1. 图论(最优贸易SPFA和BFS解法)
  2. DP
  3. ybtoj数学部分

你可能感兴趣的:(题解,总结,常见错误,算法,c++)