以下のような問題を解こうとしています。
問題文
高橋くんは、 N問のクイズに答えます。
高橋くんの持っている点数ははじめ X点で、クイズに正解すると1点増え、不正解だと1点減ります。
ただし、持っている点数が0点のときに不正解となった場合は点数は減りません。
高橋くんのクイズの結果が文字列Sで与えられます。
Sの左からi番目の文字が o のとき、i問目が正解だったことを、 x のとき、i問目が不正解だったことを表します。
高橋くんの最終的な点数はいくつでしょうか?
入力
入力は以下の形式で標準入力から与えられる。
N X S
出力
高橋くんの最終的な点数を出力せよ。
入力例 1
3 0 xox
出力例 1
0
入力例 2
20 199999 oooooooooxoooooooooo
出力例 2
200017
入力例 3
20 10 xxxxxxxxxxxxxxxxxxxx
出力例 3
0
自分のコード
#include <stdio.h> int main(){ int num, score, i; scanf("%d %d", &num, &score); char s[num]; scanf("%s", s); for( i = 0; i < num; i++ ){ if(s[i] == 'o'){ score++; }else if(s[i] == 'x'){ if(score != 0){ score--; } } } printf("%d", score); return 0; }
提出すると3/10の間違いがあったのですが、間違いがわかりません。
入力例はすべて通りました。
改善点を教えていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/26 04:36