Comet OJ - Contest #0题解】的更多相关文章

传送门 菜爆了--总共只有一道题会做的--而且也没有短裙好难过 为啥必须得有手机才能注册账号啊喂--歧视么-- \(A\) 解方程 推一下柿子大概就是 \[x-\sqrt{n}=y+z+2\sqrt{yz}\] 如果\(\sqrt{n}\)是无理数,那么就是 \[x=y+z,{n\over 4}=yz\] 那么要满足\(n\)必须是\(4\)的倍数,然后爆搜\({n\over 4}\)的因子,统计答案就行了 如果\(n\)不是无理数,那么 \[x=\sqrt{n}+(y-z)^2\] 这东西一看…
Solution of Comet OJ - Contest #11 A.eon -Problem designed by Starria- 在模 10 意义下,答案变为最大数的最低位(即原数数位的最小值)和原数最低位的差. 令$S$为输入数字串,则答案为 $(\min_{i=1}^{n}S_i-S_n)%10$ . 时间复杂度 $O(n)$ . B.usiness -Problem designed by Winniechen- 这是一个很显然的动态规划问题. 令$g_{i,j}$表示第$i$…
A:化成x-√n=y+z-√4yz的形式,则显然n是完全平方数时有无数组解,否则要求n=4yz,暴力枚举n的因数即可.注意判断根号下是否不小于0. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<algorithm> using namespace std; #define ll long…
传送门 太菜了连\(D\)都做不出来没有小裙子\(QAQ\) \(A\) 暴力把所有的数对都算出来,然后\(sort\)一下就行了 const int N=505; int a[N],st[N*N],top,n,k;ll res; int main(){ scanf("%d%d",&n,&k); fp(i,1,n)scanf("%d",&a[i]); fp(i,1,n)fp(j,i+1,n)st[++top]=a[i]+a[j]; sort(…
点此看题面 大致题意: 给定自然数\(n\),让你求出方程\(\sqrt{x-\sqrt n}+\sqrt y-\sqrt z=0\)的自然数解\(x,y,z\)的数量以及所有解\(xyz\)之和. 推式子 这道题应该不是很难. 移项可以得到: \[\sqrt{x-\sqrt n}=\sqrt z-\sqrt y\] 两边同时平方: \[x-\sqrt n=y+z-2\sqrt {yz}\] 则我们可以得出第一个结论: 当\(n\)为完全平方数,即\(\sqrt n\)为整数时,有无数组解,直接…
传送门 既然没参加过就没有什么小裙子不小裙子的了-- 顺便全是概率期望真是劲啊-- 因自过去而至的残响起舞 \(k\)增长非常快,大力模拟一下就行了 int main(){ scanf("%lld",&x),sum=2; if(x==1)return puts("2"),0; fp(i,3,19260817){ sum+=(sum>>1); if(sum>x)return printf("%d\n",i),0; } re…
传送门 \(A\) 咕咕 const int N=1005; int a[N],n,T; int main(){ for(scanf("%d",&T);T;--T){ scanf("%d",&n); fp(i,1,10)a[i]=n%10,n/=10; R int fl=1; fp(i,1,9)if(a[i]<a[i+1]){fl=0;break;} if(!fl)puts("Impossible"); else print…
传送门 \(A\) 咕咕咕 const int N=1e6+5; char s[N],t[N];int n,res; inline bool cmp(const int &x,const int &y){return x>y;} int main(){ scanf("%s",s+1),n=strlen(s+1); fp(i,1,n)t[i]=s[i];sort(t+1,t+1+n,cmp); fp(i,1,n)res=(res*10+t[i]-s[i]),res=…
传送门 \(A\) 咕咕咕 const int N=1005; char s[N][N];int len[N],n,id; inline bool cmp(R int j,R int k){ R int l=min(len[j],len[k]); fp(i,1,l)if(s[j][i]!=s[k][i])return s[j][i]<s[k][i]; return len[j]<len[k]; } int main(){ scanf("%d",&n),id=1; f…
Contest14的本质:区间覆盖+Tarjan( A 把距离公式两边平方即可 注意要long long code #include <algorithm> #include <iostream> #include <cstdlib> #include <cstring> #include <cstdio> #define fo(a,b,c) for (a=b; a<=c; a++) #define fd(a,b,c) for (a=b;…