※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 15234번 문제인 Number Pairs이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/15234 

 

15234번: Number Pairs

An integer, the number of pairs that add K.

www.acmicpc.net

N이 1000 이하이므로, 가능한 N*(N-1) / 2 가지의 모든 두 쌍의 인덱스에 대하여 두 수의 합이 K가 되는지 확인하는 것으로 문제를 해결할 수 있다.

 

문제의 조건 중 모든 두 수가 서로 다르다는 조건이 있어 위와 같이 간단히 해결할 수 있다는 점을 짚고 넘어가자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int arr[1000];

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	int N, K; cin >> N >> K;
	for (int i = 0; i < N; i++) cin >> arr[i];

	int cnt = 0;
	for (int i = 0; i < N; i++) {
		for (int j = i + 1; j < N; j++) {
			if (arr[i] + arr[j] == K) cnt++;
		}
	}

	cout << cnt;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 25400 // C++] 제자리  (0) 2022.11.24
[BOJ 15238 // C++] Pirates  (0) 2022.11.24
[BOJ 16189 // C++] Repetitive Palindrome  (0) 2022.11.24
[BOJ 25756 // C++] 방어율 무시 계산하기  (0) 2022.11.24
[BOJ 15232 // C++] Rectangles  (0) 2022.11.24

※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 15236번 문제인 Dominos이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/15236 

 

15236번: Dominos

Dominoes are gaming pieces used in numerous tile games. Each domino piece contains two marks. Each mark consists of a number of spots (possibly zero). The number of spots depends on the set size. Each mark in a size N domino set can contain between 0 and N

www.acmicpc.net

점이 k개 찍혀있는 칸의 등장횟수는 N+2와 같다는 점을 관찰하자.

 

위와 같은 관찰을 이용하면 문제의 답은 (0부터 k까지의 합) * (N+2), 즉 N(N+1)(N+2)/2와 같음을 알 수 있다. 이를 출력해 문제를 해결하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    int N; cin >> N;
    cout << (N * (N + 1) * (N + 2)) / 2;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 15232 // C++] Rectangles  (0) 2022.11.24
[BOJ 10105 // C++] Assigning Partners  (0) 2022.11.24
[BOJ 25980 // C++] Abbreviated Aliases  (0) 2022.11.24
[BOJ 25755 // C++] 거울반사  (0) 2022.11.23
[BOJ 25953 // C++] 템포럴 그래프  (0) 2022.11.23

+ Recent posts