Решение задачи Медвежонок и пять карт с Codeforces

Без пояснения   Просмотров: 27


Маленький медвежонок Лимак любит играть в игры. Сейчас у него есть пять карт. На каждой карте написано одно целое число. Лимак может сделать ровно один ход, сбросив некоторые карты. Его цель — минимизировать сумму чисел на оставшихся у него в руках картах.

За этот единственный ход Лимак может сбросить две или три карты, на которых написаны одинаковые числа. Разумеется, если у него нет двух или трёх карт с одинаковыми числами, то он не делает никакого хода.

Вам даны значения на всех пяти картах, которые есть у Лимака. Какую минимальную сумму чисел на оставшихся картах он может получить, сделав не более одного хода?

Код

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
typedef vector<int> vi;

int a[101];

int main(){
	int t=0;
	for(int i=0;i<5;i++){
		int x;
		cin>>x;
		a[x]++;
		t+=x;
	}
	int m=0;
	for(int i=0;i<101;i++) if(a[i]>=2){
		m=max(m,i*min(3,a[i]));
	}
	cout<<t-m<<endl;
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться