[杂题] UOJ113. [UER #2]手机的生产

简单模拟。记一下当前剩几个手机。连续的 \(and\) 一起搞。

要思考清楚再写就好了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<cstdio>
#include<cstring>
#include<algorithm>
typedef long long LL;
using namespace std;
const int P=998244353;
int n;
LL ans,now,cnt;
char ch[5];
int main(){
scanf("%d",&n);
now=1; cnt=1;
for(int i=1;i<=n-1;i++){
scanf("%s",ch);
if(ch[0]=='&'){
cnt++;
} else{
now=now*cnt%P; ans=(ans+now)%P;
cnt=1;
}
}
ans=(ans+now*cnt%P+1)%P;
printf("%lld\n",ans);
return 0;
}