社区讨论

aaa20分求调。。。

P14954520参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@mjybnx71
此快照首次捕获于
2026/01/03 21:11
2 个月前
此快照最后确认于
2026/01/07 18:30
2 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int T;
long long a,b,c,n;
string s; 
int main()
{
    cin >> T;
    while(T--)
    {
		long long cnt1=0,cnt2=0,cnt3=0,sum5=0,sum52=0,num=0;
    	cin >> n >> a >> b >> c >> s;
    	
    	for(int i = 0;i < n;i++)
    	{
    		if (s[i] == '5') cnt1++;
            else if (s[i] == '2') cnt2++;
            else if (s[i] == '0') cnt3++;
		}
		
		for(int i = 0;i < n;i++)
    	{
    		if (s[i] == '5') {
                sum5++;
            } else if (s[i] == '2') {
                if (sum5 > 0) {
                    sum5--;
                    sum52++;
                }
            } else if (s[i] == '0') {
                if (sum52 > 0) {
                    sum52--;
                    num++;
                }
            }
		}
		long long ans=0;
		ans=min(cnt1-num+a,cnt2-num+b);
		ans=min(ans,cnt3-num+c);
		cout << ans+num << "\n";
	}
    return 0;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...