# 출처 : https://www.acmicpc.net/problem/16198 별다른 어려움 없이 재귀와 백트래킹을 이용한 완전탐색을 통해 문제를 풀었다. # 풀이12345678910111213141516171819202122232425262728293031#include #include using namespace std; int N, W[10];bool chk[10];int func(){ int ret = 0; for (int i = 1; i > N; for (int i = 0; i > W[i]; cout
# 출처 : https://www.acmicpc.net/problem/11723 처음 아이디어는 벡터 구현해서 풀면 되겠지 싶었으나 메모리제한을 고려하면 배열을 이용한 벡터는 구현 해도 문제가 될 것 같았다.따라서 비트마스크를 사용하여 풀었다. 기본 연산들 가령 and, or, xor 같은것들을 다시한번 떠올려 볼 수 있었다.이때 remove 에선 and 연산을 사용하여 적절하게 처리할 수 있는데, ~ 를 사용하여 전체 비트를 뒤집고 and 연산을 수행하여원하는 숫자에 해당하는 비트만 제거할 수 있었다. # 풀이1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950#include #include ..