Exemplo n.º 1
0
 vector<vector<int>> combinationSum2(vector<int>& candidates, int target) {
     vector<vector<int>> ret;
     vector<int> tmpRet;
     sort(candidates.begin(),candidates.end());
     csHelper(0,ret,candidates,target,tmpRet);
     return ret;
 }
Exemplo n.º 2
0
 void csHelper(int begin, vector<vector<int>> &ret, vector<int> &candidates, int target, vector<int> tmpRet){
     if(!target){
         ret.push_back(tmpRet);
         return;
     }
     for(int i=begin;i<candidates.size()&&candidates[i]<=target;++i){
         if(i>begin&&candidates[i]==candidates[i-1]) continue;
         tmpRet.push_back(candidates[i]);
         csHelper(i+1,ret,candidates,target-candidates[i],tmpRet);
         tmpRet.pop_back();
     }
 }
Exemplo n.º 3
0
Arquivo: user.cpp Projeto: aox/aox
void User::execute()
{
    switch( d->mode ) {
    case UserData::Creating:
        createHelper();
        break;
    case UserData::Refreshing:
        refreshHelper();
        break;
    case UserData::ChangingSecret:
        csHelper();
        break;
    case UserData::LoungingAround:
        break;
    }
}
Exemplo n.º 4
0
// Build default ignored list
void BuildDefaultIgnoredList()
{
   TDEBUG_ENTER("BuildDefaultIgnoredList");
   CSHelper csHelper(myCriticalSection, true);
   std::string userCvsIgnoreFile;
   GetHomeDirectory(userCvsIgnoreFile);
   userCvsIgnoreFile = EnsureTrailingDelimiter(userCvsIgnoreFile) + ".cvsignore";
   FileChangeParams myFcp = GetFileChangeParams(userCvsIgnoreFile);

   // Update every dwUpdateIgnoredListInterval seconds
   if (GetTickCount() > defIgnoreListTimeStamp + 1000 * dwUpdateIgnoredListInterval)
   {
      DoUpdateIgnoredList();
      fcpCvsignore = myFcp;
   }
   // Update if .cvsignore in home dir has changed
   else if (fcpCvsignore != myFcp)
   {
      DoUpdateIgnoredList();
      fcpCvsignore = myFcp;
   }
}