3 条题解
-
2
MXOJ.[J3B. Seats]
思路
首先有四种情况
- 教师和学生怎么调都无法得到适宜方案
- 教师座位数不够,从学生座位数中扣除。
- 学生座位数不够,从教师座位数中扣除。
- 教师和学生的座位数恰好满足。
第1,4种特殊方案我们选择特判。
第2,3种就是代码计算统计一条龙。
代码
ps:本代码来自于梦熊官方
#include<bits/stdc++.h> using namespace std; int a,b; string s; int main(){ cin>>a>>b>>s; if(a+b>s.size()) cout<<-1; else{ int cs=0,ct=0; for(int i=0;i<s.size();i++) if(s[i]=='S')cs++; else ct++; int ans=0; ans=max(ans,a-cs); ans=max(ans,b-ct); cout<<ans; } return 0; }
-
-5
J3B. Seats
大水
思路
统计老师座位数量和学生座位数量,计算需要扣掉几个
复杂度
时间复杂度:
设字符串长度为s,则时间复杂度
Code
#include #include #include <stdlib.h> using namespace std;
int main() { int a, b, cnt = 0; string s; cin >> a >> b >> s; if (a + b > s.size()) { cout << -1; return 0; } for (int i = 0; i < s.size(); i++) { if (s[i] == 'S') cnt++; } int g = -min(cnt - a, (int)s.size() - cnt - b); if(g < 0) cout << 0; else cout << g; return 0; }
- 1
信息
- ID
- 41
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 2
- 标签
- 递交数
- 970
- 已通过
- 329
- 上传者