백준에서 brute force 문제중

1. N개중 M개를 골라서
2. 조건에 맞는지 시뮬 때림
3. 아니면 다음거 고르기
이런거 반복하는 문제가 있는데

이런 식으로 combination이랑 permutation이던가. 작성하려고 하면 재귀로 구성하잖아요

그래서 코드 꼴이

함수F
 {
A개 고름 -> M개 고름?
-> M개 고를 때까지 F 호출
-> *여기다 작업하는 함수*
-> 판정 -> 아니면 고른거 하나 빼버림
-> 하나 빠졌으니 다시 F 호출
}

이렇게 인데
이 작업을 F에서 따로 빼서

문제 풀이
{

구성
함수F 호출
작업 함수 호출

}
이런식으로 짜려면 어떻게 해야하죠?
stl을 쓰면 이런식으로 가능하던데 내부적으로 static변수들이 있어서 얼마나 골랐는지 저장해주나?
그런데 스태틱도 말이 안 되잖아요 몇 개중 몇 개인지 어캐알고 static으로 딱 준비해놓음? 스택 영역 데이터를 데이터 영역으로 옮기는짓이 가능하면 모를까.

여기까지 생각하니 뇌정지 옴.
힌트좀 주실 선생님 계십니까..