2018 多校3 hdu 6319 6322 6324 6330

6319 a题

才看完单调队列(待补

6322 d题

一个数论题,找规律就出来了

 1 #include <iostream>
 2 #include <cstring>
 3 #include <cstdio>
 4
 5 using namespace std;
 6
 7 int main()
 8 {
 9     long long n,k;
10     cin>>n;
11     while(n--){
12         cin>>k;
13     if(k==1) cout<<5<<endl;
14     else cout<<5+k<<endl;
15     }
16
17     return 0;
18
19 }

6324 f题

异或然后判断等于1还是0

输出就可以了

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <algorithm>
 5 using namespace std;
 6
 7 int main()
 8 {
 9     int t,w,n,u,v;
10     scanf("%d",&t);
11     while(t--){
12         scanf("%d",&n);
13         int cnt = 0;
14         for(int i = 0; i<n; i++){
15             scanf("%d",&w);
16             cnt^=w;
17         }
18         for(int i =0;i<n-1;i++){
19             scanf("%d%d",&u,&v);
20         }
21         if(cnt == 0) printf("D\n");
22         else printf("Q\n");
23     }
24     return 0;
25  } 

6330 L题

一个模拟题,我写了好久(写了两遍),不知道大佬是怎么三分钟过掉的QAQ

 1 #include<iostream>
 2 #include<cmath>
 3 #include<cstring>
 4 #include<cstdio>
 5 using namespace std;
 6
 7 char s[100][100];
 8 const int maxn = 100;
 9 void put(int r,int l)
10 {
11     for(int i=1; i<=r; i++)
12     {
13         for(int j=1; j<=l; j++)
14             printf("%c",s[i][j]);
15         puts("");
16     }
17 }
18 int main()
19 {
20     int t;
21     scanf("%d",&t);
22     while(t--)
23     {
24         int a,b,c;
25         scanf("%d%d%d",&a,&b,&c);
26         for(int i=1; i<100; i++)
27             for(int j=1; j<100; j++)
28                 s[i][j]=‘.‘;
29         int indexj = b*2+1;
30         for(int i=1; i<=b*2; i++)
31  {
32             if(i%2)
33             {
34                 for(int j=indexj; j<=indexj+2*a; j++)
35                 {
36                     if(j%2)s[i][j]=‘+‘;
37                     else s[i][j]=‘-‘;
38                 }
39             }
40             else
41             {
42                 for(int j=indexj; j<=indexj+2*a; j++)
43                 {
44                     if(j%2==0)s[i][j]=‘/‘;
45                     else s[i][j]=‘.‘;
46                 }
47             }
48             indexj--;
49
50         }
51         for(int i=b*2+1; i<=b*2+1+c*2; i++)
52         {
53             if((i-b*2)%2)
54             {
55                 for(int j=1; j<=a*2+1; j++)
56                 {
57                     if(j%2)s[i][j]=‘+‘;
58                     else s[i][j]=‘-‘;
59                 }
60             }
61             else
62             {
63                 for(int j=1; j<=a*2+1; j++)
64                 {
65                     if(j%2)s[i][j]=‘|‘;
66                     else s[i][j]=‘.‘;
67                 }
68             }
69         }
70         int indexi=2*b+1;
71         for(int j=a*2+1; j<=a*2+b*2+1; j++)
72         {
73             if((j-a*2)%2)
74             {
75                 for(int i=indexi; i<=indexi+c*2; i++)
76                 {
77                     if((i-indexi)%2==0)
78                         s[i][j]=‘+‘;
79                     else s[i][j]=‘|‘;
80                 }
81             }
82             else
83             {
84                 for(int i=indexi; i<=indexi+c*2; i++)
85                 {
86                     if((i-indexi)%2==0)
87                         s[i][j]=‘/‘;
88                     else s[i][j]=‘.‘;
89                 }
90             }
91             indexi--;
92         }
93         int h = b*2+1+c*2;
94         int l = a*2+b*2+1;
95         put(h,l);
96     }
97     return 0;
98 }

原文地址:https://www.cnblogs.com/moomight/p/11222732.html

时间: 2024-11-13 08:46:11

2018 多校3 hdu 6319 6322 6324 6330的相关文章

多校训练hdu --Nice boat(线段树,都是泪)

Nice boat Time Limit: 30000/15000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 47 Accepted Submission(s): 10 Problem Description There is an old country and the king fell in love with a devil. The devil always ask

判断相同区间(lazy) 多校8 HDU 5828 Rikka with Sequence

1 // 判断相同区间(lazy) 多校8 HDU 5828 Rikka with Sequence 2 // 题意:三种操作,1增加值,2开根,3求和 3 // 思路:这题与HDU 4027 和HDU 5634 差不多 4 // 注意开根号的话,遇到极差等于1的,开根号以后有可能还是差1.如 5 // 2 3 2 3... 6 // 8 9 8 9... 7 // 2 3 2 3... 8 // 8 9 8 9... 9 // 剩下就是遇到区间相等的话,就直接开根号不往下传 10 11 12

hdu 2018 多校 第五场

1002 小洛洛 开场挂了N发插入排序的我( 最后还是要靠小洛洛写暴力 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 #include <cmath> 5 #include <cstdlib> 6 #include <algorithm> 7 using namespace std; 8 9 const int N = 12; 10 11 int mi

2018多校第十场 HDU 6430 线段树合并

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6430 题意:一棵树上每个节点权值为v[i],每个节点的heard值是:以它为LCA的两个节点的GCD的最大值,要求输出每个节点的heard值. 题解:权值范围是[1, 1e5],1e5内数因子最多不超过200个,对每个点建一颗线段树,维护每个点的因子,dfs过程中由下往上合并线段树并更新答案. 1 #include <bits/stdc++.h> 2 using namespace std; 3

hdu 6319 Problem A. Ascending Rating (2018 Multi-University Training Contest 3)

1 #include <stdio.h> 2 #include <iostream> 3 #include <cstdlib> 4 #include <cmath> 5 #include <string> 6 #include <cstring> 7 #include <algorithm> 8 #include <stack> 9 #include <queue> 10 #include <

HDU 6395(2018多校第7场1010)Sequence

不久前做过POJ3070,所以知道这题要用矩阵快速幂优化,但是这个题的递推公式中有一项?p/n?,场上就不会了... 下来才知道要用分块矩阵快速幂,因为?p/n?最多有2√p块,可以对每一块使用快速幂,复杂度(应该)为lgn*√p. 每一块的范围可以在O(1)的时间内求出,范围为x到min(n,p/(p/x)),具体证明lyd的进阶指南上有... 附上代码: #include<cstdio> #include<algorithm> #include<cstring> u

HDU 6397(2018多校第8场1001) Character Encoding 容斥

听了杜教的直播后知道了怎么做,有两种方法,一种构造函数(现在太菜了,听不懂,以后再补),一种容斥原理. 知识补充1:若x1,x2,.....xn均大于等于0,则x1+x2+...+xn=k的方案数是C(k+m-1,m-1)种(貌似紫书上有,记不太清了). 知识补充2:若限制条件为n(即x1,x2....xn均小于n,假设有c个违反,则把k减掉c个n(相当于把c个超过n的数也变成大于等于0的),就可以套用知识1的公式了. 则最后的答案为sum( (-1)^c * C(m , c) * C(m-1+

杭电2018多校第一场(2018 Multi-University Training Contest 1) 1001.Maximum Multiple (HDU6298)-数学思维题(脑子是个好东西,可惜我没有)

暑假杭电多校第一场,这一场是贪心场,很多贪心的题目,但是自己太菜,姿势挫死了,把自己都写吐了... 2018 Multi-University Training Contest 1 HDU6298.Maximum Multiple 题目意思就是给你一个n,找出来三个数x,y,z, 使得n=x+y+z,而且x,y,z都是n的因数,并且x*y*z为最大值,让你输出来x*y*z的最大值.如果没有满足条件的情况就输出-1. 由1=1/2+1/3+1/6=1/3+1/3+1/3=1/2+1/4+1/4,所

多校 #5 hdu 5784 How Many Triangles

http://acm.hdu.edu.cn/showproblem.php?pid=5784 给定平面上互不相同的n个点,求所有锐角三角形的个数.3<=n<=2000 锐角三角形因为要三个角都是锐角,所以限制条件多.即使枚举一个点,另外两条边用极角排序,也只能维护一个锐角,剩下的两个角难于统计. 但是,如果换一种思路,统计所有直角.钝角以及三点共线的个数 ,问题就简单多了.因为因为只有一个直角或钝角或平角,只需依次对每个点,统计以它为哪一个特殊角的直角.钝角.平角三角形有多少即可. 具体做法是