题意:有a双红袜子和b双蓝袜子,刚开始每天两只脚要穿不同颜色的袜子,即左脚穿红袜子,右脚穿蓝袜子,或者左脚穿蓝袜子,右脚穿红袜子,而且每天穿过的袜子都会扔掉,问有多少天可以穿不同颜色的袜子,接下来又有多少天可以穿袜子(即两只脚都有袜子穿)
解题思路:首先针对第一问,有多少天可以穿不同颜色的袜子,因为每天会消耗一只蓝袜子和一只红袜子,所以天数就是袜子少的那种颜色的袜子的数量,即min(a,b)
而接下来有多少天可以穿袜子,这个也简单,除去之前用掉的袜子,剩下的袜子除以2即为所求
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<queue>
#include<stack>
#include<math.h>
#include<vector>
#include<map>
#include<set>
#include<stdlib.h>
#include<cmath>
#include<string>
#include<algorithm>
#include<iostream>
#define exp 1e-10
using namespace std;
const int N = 1001;
const int inf = 1000000000;
const int mod = 2009;
int main()
{
int a,b;
scanf("%d%d",&a,&b);
if(a<b)
swap(a,b);
printf("%d %d\n",b,(a-b)/2);
return 0;
}
菜鸟成长记