Official
A - Trimo Editorial
by
A - Trimo Editorial
by
physics0523
初心者の方へ
- プログラミングの学習を始めたばかりで何から手をつけるべきかわからない方は、まずは practice contest の問題A「Welcome to AtCoder」をお試しください。言語ごとに解答例が掲載されています。
- また、プログラミングコンテストの問題に慣れていない方は、 AtCoder Beginners Selection の問題をいくつか試すことをおすすめします。
- C++入門 AtCoder Programming Guide for beginners (APG4b) は、競技プログラミングのための C++ 入門用コンテンツです。
- Python入門 AtCoder Programming Guide for beginners (APG4bPython) は、競技プログラミングのための Python 入門用コンテンツです。
解法はいろいろあるので、ひとつの方針を示します。
以下のロジックで出力することで、この問題に正解できます。
- 文字列を先頭から調べる。
- 現在の文字が
oである場合、フラグが立っている時に限り、その文字を出力する。 - 現在の文字が
oでない場合、フラグを立ててその文字を出力する。
- 現在の文字が
こうすることで、先頭から見て o 以外が出るまでは o を出力せず、 o 以外が出てからは o を出力することができます。
実装例 (C++):
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
string s;
bool flag=false;
cin >> n >> s;
for(auto &nx : s){
if(nx=='o'){
if(flag){
cout << nx;
}
}
else{
flag=true;
cout << nx;
}
}
cout << "\n";
return 0;
}
posted:
last update:
