[백준 24544] 카카오뷰 큐레이팅 효용성 분석 (C#, C++) - soo:bak
작성일 :
문제 링크
설명
콘텐츠 흥미도와 My뷰 등록 여부가 주어질 때, 전체 흥미도 합과 미등록 콘텐츠의 흥미도 합을 출력하는 문제입니다.
접근법
흥미도 배열을 모두 합해 전체 합을 구합니다.
등록 여부가 0인 콘텐츠만 따로 더해 두 번째 값을 계산합니다.
Code
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Text;
class Program {
static void Main() {
var parts = Console.In.ReadToEnd().Split();
var idx = 0;
var n = int.Parse(parts[idx++]);
var a = new int[n];
for (var i = 0; i < n; i++)
a[i] = int.Parse(parts[idx++]);
var sumAll = 0;
for (var i = 0; i < n; i++)
sumAll += a[i];
var sumNot = 0;
for (var i = 0; i < n; i++) {
var b = int.Parse(parts[idx++]);
if (b == 0) sumNot += a[i];
}
var sb = new StringBuilder();
sb.AppendLine(sumAll.ToString());
sb.AppendLine(sumNot.ToString());
Console.Write(sb);
}
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <bits/stdc++.h>
using namespace std;
typedef vector<int> vi;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n; cin >> n;
vi a(n);
for (int i = 0; i < n; i++)
cin >> a[i];
int sumAll = 0;
for (int i = 0; i < n; i++)
sumAll += a[i];
int sumNot = 0;
for (int i = 0; i < n; i++) {
int b; cin >> b;
if (b == 0) sumNot += a[i];
}
cout << sumAll << "\n" << sumNot << "\n";
return 0;
}