본문 바로가기

전체보기102

[백준] 2042번 : 구간 합 구하기 https://www.acmicpc.net/problem/2042 2042번: 구간 합 구하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)과 M(1 ≤ M ≤ 10,000), K(1 ≤ K ≤ 10,000) 가 주어진다. M은 수의 변경이 일어나는 횟수이고, K는 구간의 합을 구하는 횟수이다. 그리고 둘째 줄부터 N+1번째 줄�� www.acmicpc.net //세그먼트 트리 이용 (2042번 - 구간 합 구하기) #include using namespace std; typedef long long ll; ll init(vector & v, vector& tree, int node, int start, int end) { if (start == end) { return tree[node] .. 2020. 7. 9.
[코드포스] 1283B : Candies Division https://codeforces.com/contest/1283/problem/B Problem - B - Codeforces codeforces.com #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int tc; cin >> tc; for (int i = 0; i > n >> k; int ans = n - n % k; //나올 수 있는 답의 최소 ans += min(n % k, k / 2); cout 문제에 제시된 조건 2개를 만족한다는 가정하에, 최대한 많은 사탕을 나눠줘야 하는 문제이므로 남은 n%k개의 사탕을 최대한 1개씩 아이들에게 각각 .. 2020. 7. 6.
[코드포스] 822A : I'm bored with life https://codeforces.com/problemset/problem/822/A Problem - 822A - Codeforces codeforces.com #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int a, b, ans = 1; cin >> a >> b; for (int i = 1; i 만약 a>b라면, a = 1*2*3*...*b*(b+1)*....a b = 1*2*3*...*b 입니다. 다시 말해, a와 b의 gcd(최대공약수)는 1*2*3*...b가 될 것입니다. 그러므로 1부터 min(a,b)까지의 곱이 답이 되는 것입니다. 2020. 7. 2.
[코드포스] 1316A : Grade Allocation https://codeforces.com/problemset/problem/1316/A Problem - 1316A - Codeforces codeforces.com #include using namespace std; //typedef long long ll; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int tc; cin >> tc; while (tc--) { int n, m, sum = 0; cin >> n >> m; vector v; for (int i = 0; i > s; sum += s; v.push_back(s); } if (m > sum) cout 2020. 7. 1.
[코드포스] 1374A : Required Remainder https://codeforces.com/problemset/problem/1374/A Problem - 1374A - Codeforces codeforces.com #include using namespace std; typedef long long ll; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int tc; cin >> tc; while (tc--) { ll x, y, n; cin >> x >> y >> n; if (((n / x) * x + y) 2020. 6. 30.
[백준] 1977번 : 완전제곱수 https://www.acmicpc.net/problem/1977 1977번: 완전제곱수 M과 N이 주어질 때 M이상 N이하의 자연수 중 완전제곱수인 것을 모두 골라 그 합을 구하고 그 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 완� www.acmicpc.net #include using namespace std; typedef long long ll; int arr[101]; int main() { int m, n; cin >> m >> n; int cnt = 0; for (int i = 1; i = m) && (i * i 2020. 6. 26.