2018.1.10VJ小学生专场
Parkerljc
这个作者很懒,什么都没留下…
展开
-
2018.1.10C题
https://vjudge.net/contest/206616#problem/C 求数轴上到给定N个点的最小距离。找中间的点或两点形成的闭区间即可。 然而WA了两次,总和溢出int类型,改用longlong后AC #include #include int abs(int x) { if (x>=0) return x;else return (-x); } int mai原创 2018-01-10 21:55:19 · 334 阅读 · 0 评论 -
2018.1.10D连续整数的和
把一个给定的数N写成连续的若干个数之和的形式,若可以输出连续整数中的第一个数字。 一开始随手枚举,直接TE。思考优化,然后想到用等比数列。 对于给定的N,以1为开头则最多有k个数字,而k>=2且小于等于sqrt(2*N)(由等差数列求和公式有k(k+1)=2N) a1*k+(1+...+k-1)=N即a1*k+(k)(k-1)/2=N即若(N-(k)(k-1)/2)%k=0即可说明存在,再将原创 2018-01-11 22:20:29 · 195 阅读 · 0 评论 -
2018.1.10E题
画了张图找规律 #include int main() { int t,i; scanf("%d",&t); for (i=1;i<=t;i++) { int n; scanf("%d",&n); printf("%d\n",(2*n-1)*(2*n-1)+1); } }原创 2018-01-10 22:25:22 · 314 阅读 · 0 评论 -
2018.1.10A题
https://vjudge.net/contest/206616#problem/A 也是模拟题,WA了两次,一次1和1e7没有考虑到。改了以后又WA一次,然后干脆换了个写法,结果就过了。 #include int main() { int t,max=10000001,min=0,flag=1; scanf("%d",&t); while (t!=0)原创 2018-01-10 21:47:41 · 158 阅读 · 0 评论 -
2018.1.10B题
水仙花数,模拟水题 #include int h(int x,int y) { int t=1,i; for (i=1;i<=x;i++) t=t*y;return t; } int main() { int m,i,t,j,s,sum,a[5]={0}; scanf("%d",&m); for (i=m;;i++) { t原创 2018-01-10 21:44:30 · 141 阅读 · 0 评论 -
2018.1.10 F 欧拉回路HDU1878 并查集
做题时没AC,只知道度数应该是偶数,然后WA了好多次。其实顶点应该在一个集合中,反例有N个相互独立的多边形。 学习了并查集后过了。 #include int father[1000]={0}; int find(int x) { if (father[x]!=x) father[x]=find(father[x]); return father[x]; } int main原创 2018-01-11 22:56:59 · 187 阅读 · 0 评论