해 구성하기 16

BOJ 15942 : Thinking Heap

문제 링크 : boj.kr/15942난이도 : G2태그 : 그리디, 해 구성하기코드#include #define all(x) (x).begin(), (x).end()#define INF 0x7FFFFFFFusing namespace std;using ll = long long;using ld = long double;using pii = pair;using pll = pair;bool parent(int a, int b) { while(b != 0 && a > n; int k, p; cin >> k >> p; vector ans(n+1); int l = 1, r = k+1; for(int i = 1; i 풀이p의 부모에는 k보다 작은 값을, 자식에는 k보다 큰 값을 놓는다..

PS 2024.08.18

BOJ 31873 : 별 수호자 룰루

문제 링크 : boj.kr/31873난이도 : G2태그 : 해 구성하기, 애드혹코드#include #define all(x) (x).begin(), (x).end()#define INF 0x7FFFFFFFusing namespace std;using ll = long long;using ld = long double;using pii = pair;using pll = pair;int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, k; cin >> n >> k; if(k == 1 || (k == n && k % 2 == 1)) { cout 풀이불가능한 경우부터 제외하자. k가 1인 경우 당연히 불가..

PS 2024.05.22

BOJ 26651 : 팬램그

문제 링크 : boj.kr/26651 난이도 : G5 태그 : 수학, 해 구성하기 26651번: 팬램그 그램팬인 부분 문자열의 개수가 $X$개인 문자열 $S$를 찾아 출력한다. $S$는 길이가 $1$ 이상 $100\,000$ 이하이며 알파벳 대문자로 구성되어야 한다. 가능한 답이 여럿인 경우 그 중 아무거나 하나를 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_s..

PS 2024.04.07