問題文通りに実装します。 小池くんが不正解したときだけ現在の小池くんの持ち得点 が 未満となっていれば にする形です。
ただ、この問題の制約を見ると小池くんの持ち得点が int型整数 の最大値 を超えてしまう可能性があります。 よって long long 型を使うことが推奨されます。
#include <stdio.h>
#define ll long long
int main(void){
ll N,P,A,W; scanf("%lld%lld%lld%lld", &N, &P, &A, &W);
char S[N+1]; scanf("%s", S);
ll point=P;
for(int i=0; i<N; i++){
if(S[i]=='o') point += A;
else point -= W;
if(point<0) point=0;
}
printf("%lld", point);
}