Skip to content

Commit f5e5f9b

Browse files
committed
1005 alg
1 parent ae09f02 commit f5e5f9b

File tree

3 files changed

+85
-13
lines changed

3 files changed

+85
-13
lines changed

โ€Žcpp/2559.cpp

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
#include <iostream>
2+
using namespace std;
3+
4+
int arr[100001];
5+
long long int ans;
6+
7+
int main() {
8+
int N, K;
9+
cin >> N >> K;
10+
11+
for (int i = 0; i < N; i++) {
12+
cin >> arr[i];
13+
}
14+
15+
int s = 0;
16+
long long int sum = 0;
17+
18+
for (int i = s; i < s+K; i++) {
19+
sum += arr[i];
20+
}
21+
22+
ans = sum;
23+
24+
while (true) {
25+
sum -= arr[s];
26+
if (s+K >= N) {
27+
break;
28+
}
29+
sum += arr[s+K];
30+
if (sum > ans) {
31+
ans = sum;
32+
}
33+
s++;
34+
}
35+
cout << ans;
36+
return 0;
37+
}

โ€Žcpp/2725.cpp

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
#include<iostream>
2+
3+
using namespace std;
4+
5+
int arr[1001];
6+
7+
int gcd(int a, int b) {
8+
int t;
9+
while (b) {
10+
t = a % b;
11+
a = b;
12+
b = t;
13+
}
14+
return a;
15+
}
16+
17+
int main() {
18+
int c;
19+
cin >> c;
20+
arr[1] = 3;
21+
for (int i = 2; i <= 1000; i++) {
22+
int cnt = 0;
23+
for (int j = 1; j < i; j++) {
24+
if (gcd(i, j) == 1)
25+
cnt++;
26+
}
27+
arr[i] = arr[i - 1] + 2 * cnt;
28+
}
29+
while (c--) {
30+
int n;
31+
cin >> n;
32+
printf("%d\n", arr[n]);
33+
}
34+
return 0;
35+
}

โ€Žcpp/3020.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,34 @@
22
#include <algorithm>
33
#include <vector>
44
using namespace std;
5-
int from_down[500001];
6-
int from_up[500001];
5+
6+
int down[500001];
7+
int up[500001];
78
vector<int> v;
89

910
int main() {
10-
ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
1111
int num, height, val;
1212
cin >> num >> height;
1313
for (int i = 0; i < num; i++) {
1414
cin >> val;
15-
if (i % 2 == 0) from_down[val]++;
16-
else from_up[val]++;
15+
if (i % 2 == 0) down[val]++;
16+
else up[val]++;
1717
}
1818
for (int i = height-1; i >= 1; i--) {
19-
from_down[i] += from_down[i + 1]; //์•„๋ž˜์—์„œ ๋ถ€ํ„ฐ ๋†’์ด i์ผ๋•Œ ๋ถ€์ˆ˜๋Š” ์žฅ์• ๋ฌผ์˜ ์ˆ˜
20-
from_up[i] += from_up[i + 1]; //์œ„์—์„œ ๋ถ€ํ„ฐ ๋†’์ด i์ผ๋•Œ ๋ถ€์ˆ˜๋Š” ์žฅ์• ๋ฌผ์˜ ์ˆ˜
19+
down[i] += down[i + 1];
20+
up[i] += up[i + 1];
2121
}
22-
//๋ฐ‘์—์„œ๋ถ€ํ„ฐ ๋†’์ด i์ผ๋•Œ ๋ถ€์ˆ˜๋Š” ์žฅ์• ๋ฌผ ์ˆ˜
2322
for (int i = 1; i <= height; i++)
24-
v.push_back(from_down[i] + from_up[height - i + 1]);
23+
v.push_back(down[i] + up[height - i + 1]);
24+
2525
sort(v.begin(),v.end());
26-
int dup = 1;
26+
27+
int ans = 1;
2728
int result = v[0];
2829
for (int i = 1; i < v.size(); i++) {
29-
if (v[i] == result) dup++;
30+
if (v[i] == result) ans++;
3031
else break;
3132
}
32-
cout << result << " " << dup;
33-
system("pause");
33+
cout << result << " " << ans;
3434
return 0;
3535
}

0 commit comments

Comments
ย (0)