ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1788. О пользе зонтов

#WA3 need test case
Послано jim 5 июл 2018 08:44
#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    int i,j,k,l,ii;
    int m,n;
    int girls[101];
    int boys[101];
    int count = 0;
    int upsets = 0, girlUpsets = 0, boyUpsets = 0, currentUpsets = 0;
    int happyGirls = 0;
    int chooseGirl = 0, chooseBoy = 0;

    for (i = 0; i <= 100; i ++)
    {
        girls[i] = 0;
        boys[i] = 0;
    }

    cin >> n >> m; //n girls m boys
    for (i = 1; i <= n; i ++)
    {
        cin >> girls[i];
    }
    for (j = 1; j <= m; j ++)
    {
        cin >> boys[j];
    }

    count = min (m, n);
    //计算无配对upset值
    for (i = 1; i <= n; i ++)
        upsets += girls[i];


    happyGirls = 0;


    for (i = 1; i <= count; i ++)

    {
        for (j = 1; j <= n; j ++)
            for ( k = 1; k <= m; k ++)
            {
                girlUpsets = 0;
                boyUpsets = 0;
                //计算girl upset值
                for (l = 1; l <= n; l ++)
                {
                    if (l != j)
                    {
                        girlUpsets += girls[l];
                    }
                }


                //计算boy upset值
                for (l = 1; l <= m; l ++)
                {
                    if (l != k)
                        boyUpsets += boys[l] * (happyGirls + 1);
                    //cout << "werqe: " << boys[l] << '\t' << boyUpsets << endl;
                }


                currentUpsets = girlUpsets + boyUpsets;
                if (currentUpsets < upsets)
                {
                    upsets = currentUpsets;
                    chooseGirl = j;
                    chooseBoy = k;
                }

            }

        if (chooseBoy != 0  && chooseGirl != 0)
        {
            happyGirls ++;

            //删除第chooseGirl个girl
            for (ii = chooseGirl; ii <= n - 1; ii ++)
               girls[ii] = girls[ii + 1];
            n --;

            //删除第chooseBoy个boy
            for (ii = chooseBoy; ii <= m - 1; ii ++)
                boys[ii] = boys[ii + 1];
            m --;
        }

    }
    cout << upsets << endl;
    return 0;
}
Re: #WA3 need test case
Послано Pavel 15 июн 2021 03:30
try
1 1
1
1