首页 > 其他分享 >csp-s模拟12

csp-s模拟12

时间:2024-10-18 17:47:59浏览次数:1  
标签:__ 12 log ll sqrt pi csp 模拟 define

csp-s模拟12

\(T1\) T2918. 小 h 的几何 \(100pts\)

  • 对于任意三角形,均有其三条边的中点、三条高的垂足、三个顶点与垂心连线的中点,这九个点在一个圆上。

  • 观察样例可知,对于单位圆上 \(\triangle ABC\) 的三个顶点 \(A(x_{a},y_{a}),B(x_{b},y_{b}),C(x_{c},y_{c})\) ,其九点圆圆心为 \(\Omega (A,B,C)=(\dfrac{x_{a}+x_{b}+x_{c}}{2},\dfrac{y_{a}+y_{b}+y_{c}}{2})\) 。

    • 证明
      • 直接构造坐标(从单位圆的角度考虑)

        • 不妨只取三条边的中点参与计算,等价于求 \(D(\dfrac{x_{a}+x_{b}}{2},\dfrac{y_{a}+y_{b}}{2}),E(\dfrac{x_{a}+x_{c}}{2},\dfrac{y_{a}+y_{c}}{2}),F(\dfrac{x_{b}+x_{c}}{2},\dfrac{y_{b}+y_{c}}{2})\) 的外接圆圆心。
        • 设 \(\Omega (A,B,C)=(x,y)\) 等价于求 \(\begin{cases} (x-\frac{x_{a}+x_{b}}{2})^{2}+(y-\frac{y_{a}+y_{b}}{2})^{2}=r^{2} \\ (x-\frac{x_{a}+x_{c}}{2})^{2}+(y-\frac{y_{a}+y_{c}}{2})^{2}=r^{2} \\ (x-\frac{x_{b}+x_{c}}{2})^{2}+(y-\frac{y_{b}+y_{c}}{2})^{2}=r^{2} \end{cases}\) ,又因为 \(x_{a}^{2}+y_{a}^{2}=x_{b}^{2}+y_{b}^{2}=x_{c}^{2}+y_{c}^{2}=(2r)^{2}=4r^{2}=1^{2}=1\) ,不难想到构造 \(\begin{cases} x=\frac{x_{a}+x_{b}+x_{c}}{2} \\ y=\frac{y_{a}+y_{b}+y_{c}}{2} \end{cases}\) 。
          • 由中点三角形的相似性 \(\triangle ABC \backsim \triangle FED\) 和相似比等于 \(2\) ,不难得到 \(\triangle ABC\) 外接圆半径和 \(\triangle FED\) 外接圆半径的相似比也等于 \(2\) 。
            • 好像这个结论不是很显然(从代数推导的角度可能会比较显然?),证明咕了。
      • 挂下题解做法。

  • 统计 \((x_{i},y_{i})\) 作为 \(A,B,C\) 计算次数的贡献即可,拆开式子减小精度误差,有 \(\dbinom{n-i}{2}+\dbinom{i-1}{1}\dbinom{n-i}{1}+\dbinom{i-1}{2}=\dfrac{(n-i)(n-i-1)}{2}+(i-1)(n-i)+\dfrac{(i-1)(i-2)}{2}\) 。

    点击查看代码
    const double Pi=3.141592653589,mod=1000000000;
    int main()
    {
    	freopen("geometry.in","r",stdin);
    	freopen("geometry.out","w",stdout);
    	ll n,i;
    	double q,x,y,ansx=0,ansy=0;
    	cin>>n;
    	for(i=1;i<=n;i++)
    	{
    		cin>>q;
    		x=cos(q/mod*Pi);
    		y=sin(q/mod*Pi);
    		if(i<=n-2)
    		{
    			ansx+=x*(n-i)*(n-i-1)/2;
    			ansy+=y*(n-i)*(n-i-1)/2;
    		}
    		if(2<=i&&i<=n-1)
    		{
    			ansx+=x*(i-1)*(n-i);
    			ansy+=y*(i-1)*(n-i);
    		}
    		if(3<=i)
    		{
    			ansx+=x*(i-1)*(i-2)/2;
    			ansy+=y*(i-1)*(i-2)/2;
    		}
    	}
    	ansx*=(3.0/n/(n-1)/(n-2));
    	ansy*=(3.0/n/(n-1)/(n-2));
    	printf("%.12lf %.12lf",ansx,ansy);
    	fclose(stdin);
    	fclose(stdout);
    	return 0;
    }
    

\(T2\) T2919. 小 w 的代数 \(10pts\)

  • 部分分

    • 子任务 \(3\) :对于整条链上的每个节点都有选/不选两种选择,且最终得到的非空点集一定合法,故 \(2^{n}-1\) 即为所求,时间复杂度为 \(O(\log n)\) 。
  • 正解

    • 等学了圆方树再来补。

\(T3\) T2920. 小 y 的数论 \(15pts\)

  • 多倍经验: 2023牛客OI赛前集训营-提高组(第一场) D 虚树

  • 因为本身就是棵树,所以最小斯坦纳树 \(f(S)\) 等价于点集 \(S\) 的虚树。

  • 部分分

    • 子任务 \(1\) :爆搜后虚树正常做即可,时间复杂度为 \(O(2^{n}qk( \log k+ \log n))\) 。

      点击查看代码
      struct node
      {
      	ll nxt,to,w;
      }e[600010];
      ll head[600010],fa[600010],siz[600010],dep[600010],son[600010],top[600010],dis[600010],dfn[600010],pos[600010],tot=0,cnt=0,ans;
      vector<ll>s,tmp;
      void add(ll u,ll v,ll w)
      {
      	cnt++;
      	e[cnt].nxt=head[u];
      	e[cnt].to=v;
      	e[cnt].w=w;
      	head[u]=cnt;
      }
      void dfs1(ll x,ll father)
      {
      	tot++;
      	dfn[x]=tot;
      	pos[tot]=x;
      	siz[x]=1;
      	fa[x]=father;
      	dep[x]=dep[father]+1;
      	for(ll i=head[x];i!=0;i=e[i].nxt)
      	{
      		if(e[i].to!=father)
      		{
      			dis[e[i].to]=dis[x]+e[i].w;
      			dfs1(e[i].to,x);
      			siz[x]+=siz[e[i].to];
      			son[x]=(siz[e[i].to]>siz[son[x]])?e[i].to:son[x];
      		}
      	}
      }
      void dfs2(ll x,ll id)
      {
      	top[x]=id;
      	if(son[x]!=0)
      	{
      		dfs2(son[x],id);
      		for(ll i=head[x];i!=0;i=e[i].nxt)
      		{
      			if(e[i].to!=fa[x]&&e[i].to!=son[x])
      			{
      				dfs2(e[i].to,e[i].to);
      			}
      		}
      	}
      }
      ll lca(ll u,ll v)
      {
      	while(top[u]!=top[v])
      	{
      		if(dep[top[u]]>dep[top[v]])
      		{
      			u=fa[top[u]];
      		}
      		else
      		{
      			v=fa[top[v]];
      		}
      	}
      	return (dep[u]>dep[v])?v:u;
      }
      ll get_dis(ll x,ll y)
      {
      	x=pos[x];
      	y=pos[y];
      	return dis[x]+dis[y]-2*dis[lca(x,y)];
      }
      void dfs(ll pos,ll n,ll k)
      {
      	if(s.size()==k)
      	{
      		tmp.clear();
      		for(ll i=0;i<s.size();i++)
      		{
      			tmp.push_back(s[i]);
      		}
      		sort(tmp.begin(),tmp.end());
      		ll sum=get_dis(tmp[0],tmp.back());
      		for(ll i=1;i<tmp.size();i++)
      		{
      			sum+=get_dis(tmp[i],tmp[i-1]);
      		}	
      		ans=max(ans,sum/2);
      		return;
      	}
      	if(pos==n+1)
      	{
      		return;
      	}
      	else
      	{
      		s.push_back(dfn[pos]);
      		dfs(pos+1,n,k);
      		s.pop_back();
      		dfs(pos+1,n,k);
      	}
      }
      int main()
      {
      	freopen("number.in","r",stdin);
      	freopen("number.out","w",stdout);
      	ll n,q,u,v,w,l,r,len,k,i;
      	scanf("%lld",&n);
      	for(i=1;i<=n-1;i++)
      	{
      		scanf("%lld%lld%lld",&u,&v,&w);
      		add(u,v,w);
      		add(v,u,w);
      	}
      	dfs1(1,0);
      	dfs2(1,1);
      	scanf("%lld",&q);
      	for(i=1;i<=q;i++)
      	{
      		scanf("%lld%lld%lld",&l,&r,&k);
      		ans=0;
      		dfs(l,r,k);
      		printf("%lld\n",ans);
      	}
      	fclose(stdin);
      	fclose(stdout);
      	return 0;
      }
      
  • 正解

\(T4\) T2921. 小j 的组合 \(15pts\)

  • 部分分

    • 子任务 \(3\) :整条链本身就是一条哈密顿回路,直接输出 \(1 \sim n\) 即可。
  • 正解

    • 操作实际上是将 \(v\) 复制给 \(v'\) ,本质是从 \(v\) 的某个子节点回溯到 \(v/v'\) 的过程。
    • 然后做法就和 [ABC361E] Tree and Hamilton Path 2 一样了,不在直径上回溯即可。
    • 具体地,记录重儿子(子树深度最大的儿子),再次遍历时优先遍历轻儿子,那么最后遍历的一定是直径,通过遍历节点数量特判即可(当深度相同时,难以钦定直径端点在的方向的儿子为重儿子)。
    点击查看代码
    struct node
    {
    	int nxt,to;
    }e[10010];
    int head[10010],dep[10010],son[10010],maxx[10010],vis[10010],cnt=0,tot=0,rt=0;
    vector<int>ans;
    void add(int u,int v)
    {
    	cnt++;
    	e[cnt].nxt=head[u];
    	e[cnt].to=v;
    	head[u]=cnt;
    }
    void dfs1(int x,int fa)
    {
    	maxx[x]=dep[x]=dep[fa]+1;
    	son[x]=0;
    	for(int i=head[x];i!=0;i=e[i].nxt)
    	{
    		if(e[i].to!=fa)
    		{
    			dfs1(e[i].to,x);
    			son[x]=(maxx[e[i].to]>maxx[son[x]])?e[i].to:son[x];
    			maxx[x]=max(maxx[x],maxx[e[i].to]);
    		}
    	}
    }
    void dfs2(int x,int fa,int n)
    {
    	tot++;
    	ans.push_back(x);	
    	if(son[x]!=0)
    	{
    		for(int i=head[x];i!=0;i=e[i].nxt)
    		{
    			if(e[i].to!=fa&&e[i].to!=son[x])
    			{
    				dfs2(e[i].to,x,n);
    				ans.push_back(x);
    			}
    		}
    		dfs2(son[x],x,n);
    		if(tot!=n)
    		{
    			ans.push_back(x);
    		}
    	}
    }
    int main()
    {
    	freopen("combo.in","r",stdin);
    	freopen("combo.out","w",stdout);
    	int n,u,v,rt_sum,i;
    	cin>>n;
    	rt_sum=n;
    	for(i=1;i<=n-1;i++)
    	{
    		cin>>u>>v;
    		add(u,v);
    		add(v,u);
    	}
    	dfs1(1,0);
    	for(i=1;i<=n;i++)
    	{
    		rt=(dep[i]>dep[rt])?i:rt;
    	}
    	dfs1(rt,0);
    	dfs2(rt,0,n);
    	cout<<ans.size()-n<<endl;
    	for(i=0;i<ans.size();i++)
    	{
    		if(vis[ans[i]]==0)
    		{
    			vis[ans[i]]=1;
    		}
    		else
    		{
    			cout<<ans[i]<<" ";
    			rt_sum++;
    			ans[i]=rt_sum;
    		}
    	}
    	cout<<endl;
    	for(i=0;i<ans.size();i++)
    	{
    		cout<<ans[i]<<" ";
    	}
    	fclose(stdin);
    	fclose(stdout);
    	return 0;
    }
    

总结

  • \(T1\) 赛时猜的结论赶紧有点不符合常识,但因为本场难度过于逆天且 \(T1\) 没有大样例就直接交了。
    • 在 C/C++ 插件里通过自动补全捣鼓出一些东西。
      • math.h 里的一些常用常数,貌似是 GNU 下独有的(存疑)。

        点击查看代码
        /* Some useful constants.  */
        #if defined __USE_MISC || defined __USE_XOPEN
        # define M_E		2.7182818284590452354	/* e */
        # define M_LOG2E	1.4426950408889634074	/* log_2 e */
        # define M_LOG10E	0.43429448190325182765	/* log_10 e */
        # define M_LN2		0.69314718055994530942	/* log_e 2 */
        # define M_LN10		2.30258509299404568402	/* log_e 10 */
        # define M_PI		3.14159265358979323846	/* pi */
        # define M_PI_2		1.57079632679489661923	/* pi/2 */
        # define M_PI_4		0.78539816339744830962	/* pi/4 */
        # define M_1_PI		0.31830988618379067154	/* 1/pi */
        # define M_2_PI		0.63661977236758134308	/* 2/pi */
        # define M_2_SQRTPI	1.12837916709551257390	/* 2/sqrt(pi) */
        # define M_SQRT2	1.41421356237309504880	/* sqrt(2) */
        # define M_SQRT1_2	0.70710678118654752440	/* 1/sqrt(2) */
        #endif
        
        /* The above constants are not adequate for computation using `long double's.
        Therefore we provide as an extension constants with similar names as a
        GNU extension.  Provide enough digits for the 128-bit IEEE quad.  */
        #ifdef __USE_GNU
        # define M_El		2.718281828459045235360287471352662498L /* e */
        # define M_LOG2El	1.442695040888963407359924681001892137L /* log_2 e */
        # define M_LOG10El	0.434294481903251827651128918916605082L /* log_10 e */
        # define M_LN2l		0.693147180559945309417232121458176568L /* log_e 2 */
        # define M_LN10l	2.302585092994045684017991454684364208L /* log_e 10 */
        # define M_PIl		3.141592653589793238462643383279502884L /* pi */
        # define M_PI_2l	1.570796326794896619231321691639751442L /* pi/2 */
        # define M_PI_4l	0.785398163397448309615660845819875721L /* pi/4 */
        # define M_1_PIl	0.318309886183790671537767526745028724L /* 1/pi */
        # define M_2_PIl	0.636619772367581343075535053490057448L /* 2/pi */
        # define M_2_SQRTPIl	1.128379167095512573896158903121545172L /* 2/sqrt(pi) */
        # define M_SQRT2l	1.414213562373095048801688724209698079L /* sqrt(2) */
        # define M_SQRT1_2l	0.707106781186547524400844362104849039L /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT16 && defined __USE_GNU
        # define M_Ef16		__f16 (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef16	__f16 (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef16	__f16 (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f16	__f16 (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f16	__f16 (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf16	__f16 (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f16	__f16 (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f16	__f16 (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf16	__f16 (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf16	__f16 (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf16	__f16 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f16	__f16 (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f16	__f16 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT32 && defined __USE_GNU
        # define M_Ef32		__f32 (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef32	__f32 (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef32	__f32 (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f32	__f32 (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f32	__f32 (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf32	__f32 (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f32	__f32 (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f32	__f32 (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf32	__f32 (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf32	__f32 (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf32	__f32 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f32	__f32 (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f32	__f32 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT64 && defined __USE_GNU
        # define M_Ef64		__f64 (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef64	__f64 (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef64	__f64 (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f64	__f64 (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f64	__f64 (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf64	__f64 (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f64	__f64 (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f64	__f64 (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf64	__f64 (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf64	__f64 (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf64	__f64 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f64	__f64 (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f64	__f64 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT128 && defined __USE_GNU
        # define M_Ef128	__f128 (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef128	__f128 (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef128	__f128 (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f128	__f128 (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f128	__f128 (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf128	__f128 (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f128	__f128 (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f128	__f128 (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf128	__f128 (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf128	__f128 (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf128	__f128 (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f128	__f128 (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f128	__f128 (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT32X && defined __USE_GNU
        # define M_Ef32x	__f32x (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef32x	__f32x (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef32x	__f32x (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f32x	__f32x (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f32x	__f32x (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf32x	__f32x (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f32x	__f32x (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f32x	__f32x (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf32x	__f32x (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf32x	__f32x (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf32x	__f32x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f32x	__f32x (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f32x	__f32x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
        #if __HAVE_FLOAT64X && defined __USE_GNU
        # define M_Ef64x	__f64x (2.718281828459045235360287471352662498) /* e */
        # define M_LOG2Ef64x	__f64x (1.442695040888963407359924681001892137) /* log_2 e */
        # define M_LOG10Ef64x	__f64x (0.434294481903251827651128918916605082) /* log_10 e */
        # define M_LN2f64x	__f64x (0.693147180559945309417232121458176568) /* log_e 2 */
        # define M_LN10f64x	__f64x (2.302585092994045684017991454684364208) /* log_e 10 */
        # define M_PIf64x	__f64x (3.141592653589793238462643383279502884) /* pi */
        # define M_PI_2f64x	__f64x (1.570796326794896619231321691639751442) /* pi/2 */
        # define M_PI_4f64x	__f64x (0.785398163397448309615660845819875721) /* pi/4 */
        # define M_1_PIf64x	__f64x (0.318309886183790671537767526745028724) /* 1/pi */
        # define M_2_PIf64x	__f64x (0.636619772367581343075535053490057448) /* 2/pi */
        # define M_2_SQRTPIf64x	__f64x (1.128379167095512573896158903121545172) /* 2/sqrt(pi) */
        # define M_SQRT2f64x	__f64x (1.414213562373095048801688724209698079) /* sqrt(2) */
        # define M_SQRT1_2f64x	__f64x (0.707106781186547524400844362104849039) /* 1/sqrt(2) */
        #endif
        
      • 一些常用的三角函数(弧度制)

        • double cos(double x)
          • 计算并返回 \(x\) 的余弦值(邻边比斜边) \(\cos\) 。
        • double sin(double x)
          • 计算并返回 \(x\) 的正弦值(对边比斜边) \(\sin\) 。
        • double tan(double x)
          • 计算并返回 \(x\) 的正切值(对边比邻边) \(\tan\) 。
        • double acos(double x)
          • 计算并返回范围在 \(0 \sim \pi\) 弧度之间的 \(x\) 的反余弦值。
        • double asin(double x)
          • 计算并返回范围在 \(-\frac{\pi}{2} \sim \frac{\pi}{2}\) 弧度之间的 \(x\) 的反余弦值。
        • double atan(double x)
          • 计算并返回范围在 \(x\) 的反正切值。
        • double atan2(double x,double y)
          • 计算并返回范围在 \(\frac{y}{x}\) 的反正切值。
      • 调用 \(\pi\) 的另一个方法是 const double Pi=acos(-1);

  • \(T2\)
    • 读假题了,理解错了枚举顺序和编号顺序的关系,导致子任务 \(4,5\) 菊花加树的做法写假了。
    • 赛时不会无向图的基环树找环,导致子任务 \(6\) 的 \(15pts\) 的部分分没写,虽然写了也会像子任务 \(4,5\) 一样假掉。
    • 题面中对仙人掌的描述太过抽象,换个定义。
      • 如果一个无向连通图的每条边最多在一个环里,则称它是一棵 仙人掌 。多棵仙人掌可以组成 沙漠
      • 仙人掌 满足任意两点间最多有两条边不相交的路径,此性质和定义是等价的。
  • \(T2,T4\) 的子任务 \(4\) 把 \(i\) 看出 \(1\) 了,导致菊花的部分分写成了链的部分分。

后记

标签:__,12,log,ll,sqrt,pi,csp,模拟,define
From: https://www.cnblogs.com/The-Shadow-Dragon/p/18474785

相关文章

  • csp-s模拟12
    又双叒叕垫底啦!!!rank22,T10,T220,T30,T430。逆天模拟赛,逆天题面,怕你赛场上不会打暴力真是煞费苦心出了一场暴力专场。小h的几何高斯消元求圆心精度被卡炸了,乐了。咋还考向量啊,不学文化课,输了。九点圆的圆心是外心\(O\)和垂心\(H\)的中点,且\(\overrightarrow{OH}=\overrightar......
  • P5690 [CSP-S2019 江西] 日期 &&P7909 [CSP-J 2021] 分糖果 &&P5657 [CSP-S2019] 格雷
    今天继续懒惰,继续三合一!!![CSP-S2019江西]日期题目背景CSP-SJX2019T1题目描述Alice在纸上写下了一个日期,形式为\(\text{MM-DD}\),其中\(\text{MM}\)与\(\text{DD}\)都是两位数字,分别表示月和天,然而这个日期并不一定存在。Alice找来了Bob要他更改若干位上的数字,使得这个......
  • 基于Java微信小程序的模拟考试系统(源码+lw+部署文档+讲解等)
    项目运行截图技术框架后端采用SpringBoot框架SpringBoot是一个用于快速开发基于Spring框架的应用程序的开源框架。它采用约定大于配置的理念,提供了一套默认的配置,让开发者可以更专注于业务逻辑而不是配置文件。SpringBoot通过自动化配置和约定大于......
  • CSP-J模拟赛day6——试题
    全人杯奖金Description万人瞩目的第一届“全人杯”思维挑战赛正在紧锣密鼓的进行中,比赛的类别包括数学、物理和信息。为了激励同学们踊跃参与,比赛设置了一系列的奖项。对于每个学科,分别设置了一、二、三等奖以及鼓励奖和参与奖。其中,一等奖预设x名,奖金a元,二等奖预设y名,奖......
  • NOIP 模拟赛:2024-10-17
    挂分100pts。T1:数组不清空导致的。题意:\(n\)个物品,第\(i\)个物品花费\(2^{a_i}\),价值\(b_i\)。问获得\(k\)的价值最少花多少钱。\(n\le10^5\)。二分,求\(x\)块能买到多少价值。按花费从小到大枚举\(i=0\sim30\),维护一个"当前物品集合"\(q\),初始只存储\(a=0\)的......
  • 实时数据化可视化工具LightningChart .NET v12.1.1全新发布
    LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体绘制功能。立即获取LightningChart.NETv12.1.1正......
  • UVA1240 ICPC Team Strategy 做题记录
    看到\(n\le12\),考虑搜索。但是过不去,于是加上记忆化搜索即可。因为\(n\)不大,选了什么题可以状压进一个数里面。注意如果你在搜索的时候不判是否满足时间,那么你在dfs函数开头判断超时应该返回\(-1\)及以下。剩下的按照题意模拟即可。点击查看代码intn,a[4][maxn];i......
  • 闯关leetcode——112. Path Sum
    大纲题目地址内容解题代码地址题目地址https://github.com/f304646673/leetcode/tree/main/112-Path-Sum内容GiventherootofabinarytreeandanintegertargetSum,returntrueifthetreehasaroot-to-leafpathsuchthataddingupallthevalues......
  • 闯关leetcode——121. Best Time to Buy and Sell Stock
    大纲题目地址内容解题代码地址题目地址https://leetcode.com/problems/best-time-to-buy-and-sell-stock/description/内容Youaregivenanarraypriceswhereprices[i]isthepriceofagivenstockontheithday.Youwanttomaximizeyourprofitby......
  • 从早起到上班:用Java代码模拟你的日常生活
    现在我们把Java基本语法的知识串起来,通过一个有趣的小例子来模拟你从早起到上班的日常过程。这会用到变量、条件语句、循环语句等基本概念,来让你直观感受到Java是如何工作的。场景:从早上闹钟响起到你走进办公室假设你每天早上都会经历以下几个步骤:闹钟响了,起床。看看外面......