美团面试题详解之一

152 阅读1分钟

在ACM竞赛中,一支队伍由三名队员组成,现在有N+M名学生,其中有N名学生擅长算法,剩下M名学生擅长编程,这些学生要参加ACM竞赛,他们的教练要求每支队伍至少有一名擅长算法和一名擅长编程的学生,那么这些学生最多可以组成多少支队伍?

输入:

输入两个整数

M,N,其中1<N,M<10000000

输出:

最多可以组成的队伍数

#include <iostream>
using namespace std; 
int main()
{    
int cnt = 0,n,m;  
  cout << "输入N个擅长算法的,M个擅长编程的:" << endl;  
  cin >> n >> m;  
  while(n!=0&&m!=0&&m+n!=2){     
   if(n>=m){         
   n = n-2;           
   m = m-1;        
   cnt++;        
}        
else if(n<m){            
m = m-2;            
n = n-1;            
cnt++;        
}    
}    
cout << "最大组对数量" << cnt << endl; 
   return 0; 
}