'commit'
This commit is contained in:
@@ -1,7 +1,113 @@
|
||||
|
||||
## <20>Ŷӽ<C5B6>ˮ
|
||||
|
||||
### һ<><D2BB><EFBFBD><EFBFBD>ѧ֤<D1A7><D6A4>
|
||||
|
||||
### һ<><D2BB>ԭ<EFBFBD><D4AD>
|
||||
https://www.luogu.com.cn/problem/P1190
|
||||
|
||||
P1190 [NOIP 2010 <20>ռ<EFBFBD><D5BC><EFBFBD>] <20><>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD>
|
||||
|
||||
```cpp {.line-numbers}
|
||||
#include <bits/stdc++.h>
|
||||
using namespace std;
|
||||
const int MAX_N = 10010; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
const int MAX_M = 110; // <20><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ<EFBFBD><CDB7>
|
||||
int n, m; // n: ͬѧ<CDAC><D1A7><EFBFBD><EFBFBD>, m: ˮ<><CBAE>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
|
||||
int w[MAX_N]; // ÿλͬѧ<CDAC>Ľ<EFBFBD>ˮ<EFBFBD><CBAE>
|
||||
int taps[MAX_M]; // ÿ<><C3BF>ˮ<EFBFBD><CBAE>ͷ<EFBFBD>ĵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
int main() {
|
||||
cin >> n >> m;
|
||||
|
||||
// ģ<><C4A3><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD>
|
||||
for (int i = 0; i < n; i++) {
|
||||
cin >> w[i];
|
||||
|
||||
// <20>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ
|
||||
int min_tap = 0;
|
||||
for (int j = 1; j < m; j++)
|
||||
if (taps[j] < taps[min_tap])
|
||||
min_tap = j;
|
||||
// <20><>i<EFBFBD><69>ͬѧ<CDAC>Ľ<EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ
|
||||
taps[min_tap] += w[i];
|
||||
}
|
||||
// <20>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
int result = 0;
|
||||
for (int i = 0; i < m; i++)
|
||||
result = max(result, taps[i]);
|
||||
|
||||
cout << result << endl;
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
|
||||
### <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1
|
||||
https://www.acwing.com/problem/content/description/444/
|
||||
|
||||
```cpp {.line-numbers}
|
||||
#include <bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
const int N = 10010, M = 200;
|
||||
int n, m;
|
||||
int w[N];
|
||||
int q[M];
|
||||
|
||||
int main() {
|
||||
cin >> n >> m;
|
||||
for (int i = 0; i < n; i++) cin >> w[i];
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
int t = 0;
|
||||
for (int j = 0; j < m; j++) {
|
||||
if (q[j] < q[t])
|
||||
t = j;
|
||||
}
|
||||
q[t] += w[i];
|
||||
}
|
||||
int res = 0;
|
||||
for (int i = 0; i < m;i++) res = max(res, q[i]);
|
||||
cout << res << endl;
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
### <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD><32>һ<EFBFBD><D2BB>ˮ<EFBFBD><CBAE>ͷǰ<CDB7>Ŷӽ<C5B6>ˮ<EFBFBD><CBAE>
|
||||
https://www.acwing.com/problem/content/description/5945/
|
||||
|
||||
```cpp {.line-numbers}
|
||||
#include <bits/stdc++.h>
|
||||
using namespace std;
|
||||
const int N = 1005;
|
||||
|
||||
struct Node {
|
||||
int num;
|
||||
int sum;
|
||||
} a[N];
|
||||
bool cmp(Node x, Node y) {
|
||||
if (x.sum == y.sum)
|
||||
return x.num < y.num;
|
||||
return x.sum < y.sum;
|
||||
}
|
||||
int main() {
|
||||
int n;
|
||||
cin >> n;
|
||||
for (int i = 0; i < n; i++) {
|
||||
cin >> a[i].sum;
|
||||
a[i].num = i + 1;
|
||||
}
|
||||
sort(a, a + n, cmp);
|
||||
double temp = 0.00;
|
||||
for (int i = 0; i < n; i++) {
|
||||
cout << a[i].num << " ";
|
||||
temp += (n - (i + 1)) * a[i].sum;
|
||||
}
|
||||
cout << endl;
|
||||
printf("%.2f", temp / n * 1.00);
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
### <20>ġ<EFBFBD><C4A1><EFBFBD>ѧ֤<D1A7><D6A4>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>Ԫ<EFBFBD>أ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊʲô<EFBFBD>Ǵ<EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>Ŷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
@@ -23,93 +129,3 @@ $a_i$
|
||||
<EFBFBD><EFBFBD><EFBFBD>ǵó<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۣ<EFBFBD>**<2A><>$a_i$<24><>$b_i$ǰ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>Сֵ**<2A><>
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD>ôԽС<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>棬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ԽС<EFBFBD><EFBFBD>
|
||||
|
||||
### <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
```cpp {.line-numbers}
|
||||
#include <bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
const int N = 10010, M = 200;
|
||||
int n, m;
|
||||
int w[N];
|
||||
int q[M];
|
||||
|
||||
int main() {
|
||||
cin >> n >> m;
|
||||
for (int i = 0; i < n; i++)
|
||||
cin >> w[i];
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
// <20>ҳ<EFBFBD><D2B3><EFBFBD>Сֵ
|
||||
int t = 0;
|
||||
for (int j = 0; j < m; j++) {
|
||||
if (q[j] < q[t])
|
||||
t = j;
|
||||
}
|
||||
// <20><>i<EFBFBD><69>ͬѧ<CDAC><D1A7><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD>t<EFBFBD><74>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
|
||||
q[t] += w[i];
|
||||
}
|
||||
int res = 0;
|
||||
for (int i = 0; i < m; i++)
|
||||
res = max(res, q[i]); // <20>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>
|
||||
cout << res << endl;
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
|
||||
### <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
**<2A><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**
|
||||
<EFBFBD><EFBFBD>$n$<24><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ˮ<EFBFBD><CBAE>ͷǰ<CDB7>Ŷӽ<C5B6>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>˽<EFBFBD>ˮ<EFBFBD><CBAE>ʱ<EFBFBD><CAB1>Ϊ$T_i$<24><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD>$n$<24><><EFBFBD><EFBFBD><EFBFBD>Ŷӵ<C5B6>һ<EFBFBD><D2BB>˳<EFBFBD><CBB3><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>$n$<24><><EFBFBD>˵<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ȴ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>С<EFBFBD><D0A1>
|
||||
|
||||
**<2A><><EFBFBD><EFBFBD><EFBFBD>롿**
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ϊ$n(1<><31>n<EFBFBD><6E>1000)$<24><><EFBFBD>ڶ<EFBFBD><DAB6>зֱ<D0B7><D6B1><EFBFBD>ʾ<EFBFBD><CABE>$1$<24><><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>$n$<24><><EFBFBD><EFBFBD>ÿ<EFBFBD>˵Ľ<CBB5>ˮʱ<CBAE><CAB1>$T_1<5F><31>T_2<5F><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T_n$<24><>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD>$1$<24><><EFBFBD>ո<EFBFBD><D5B8><EFBFBD>
|
||||
|
||||
**<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>Ϊһ<EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>˳<EFBFBD><EFBFBD>$1$<24><>$n$<24><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3>ڶ<EFBFBD><DAB6><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD>µ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ȴ<EFBFBD>ʱ<EFBFBD><CAB1>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ)<29><>
|
||||
|
||||
**<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**
|
||||
```
|
||||
10
|
||||
56 12 1 99 1000 234 33 55 99 812
|
||||
```
|
||||
**<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>**
|
||||
```
|
||||
3 2 7 8 1 4 9 6 10 5
|
||||
291.90
|
||||
```
|
||||
|
||||
```
|
||||
http://ybt.ssoier.cn:8088/problem_show.php?pid=1319
|
||||
```
|
||||
|
||||
```cpp {.line-numbers}
|
||||
#include <bits/stdc++.h>
|
||||
using namespace std;
|
||||
const int N = 1005;
|
||||
|
||||
struct Node {
|
||||
int num;
|
||||
int sum;
|
||||
} a[N];
|
||||
bool cmp(Node x, Node y) {
|
||||
return x.sum < y.sum;
|
||||
}
|
||||
int main() {
|
||||
int n;
|
||||
cin >> n;
|
||||
for (int i = 0; i < n; i++) {
|
||||
cin >> a[i].sum;
|
||||
a[i].num = i + 1;
|
||||
}
|
||||
sort(a, a + n, cmp);
|
||||
double temp = 0.00;
|
||||
for (int i = 0; i < n; i++) {
|
||||
cout << a[i].num << " ";
|
||||
temp += (n - (i + 1)) * a[i].sum;
|
||||
}
|
||||
cout << endl;
|
||||
printf("%.2f", temp / n * 1.00);
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
@@ -7,6 +7,8 @@ struct Node {
|
||||
int sum;
|
||||
} a[N];
|
||||
bool cmp(Node x, Node y) {
|
||||
if (x.sum == y.sum)
|
||||
return x.num < y.num;
|
||||
return x.sum < y.sum;
|
||||
}
|
||||
int main() {
|
||||
|
||||
30
TangDou/CSP-J/AcWingTraining/T1/442_3.cpp
Normal file
30
TangDou/CSP-J/AcWingTraining/T1/442_3.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#include <bits/stdc++.h>
|
||||
using namespace std;
|
||||
const int MAX_N = 10010; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
const int MAX_M = 110; // <20><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ<EFBFBD><CDB7>
|
||||
int n, m; // n: ͬѧ<CDAC><D1A7><EFBFBD><EFBFBD>, m: ˮ<><CBAE>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
|
||||
int w[MAX_N]; // ÿλͬѧ<CDAC>Ľ<EFBFBD>ˮ<EFBFBD><CBAE>
|
||||
int taps[MAX_M]; // ÿ<><C3BF>ˮ<EFBFBD><CBAE>ͷ<EFBFBD>ĵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
int main() {
|
||||
cin >> n >> m;
|
||||
|
||||
// ģ<><C4A3><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD>
|
||||
for (int i = 0; i < n; i++) {
|
||||
cin >> w[i];
|
||||
|
||||
// <20>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ
|
||||
int min_tap = 0;
|
||||
for (int j = 1; j < m; j++)
|
||||
if (taps[j] < taps[min_tap])
|
||||
min_tap = j;
|
||||
// <20><>i<EFBFBD><69>ͬѧ<CDAC>Ľ<EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ
|
||||
taps[min_tap] += w[i];
|
||||
}
|
||||
// <20>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
int result = 0;
|
||||
for (int i = 0; i < m; i++)
|
||||
result = max(result, taps[i]);
|
||||
|
||||
cout << result << endl;
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user