質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

843閲覧

AtCoder Beginner Contest B問題で1例だけ誤答になる

gaussaaaa

総合スコア1

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2021/12/15 10:35

前提・実現したいこと

プログラミング始めたての初心者です。
https://atcoder.jp/contests/abc107/tasks/abc107_b
こちらの問題を解いて提出したところ1例だけ誤答でした。

サンプル入力はすべて正答で、自分でも入力例をいじって試行しましたが誤答の原因がよくわかりません。
コードのどこに問題があるか、またどのような入力のときに誤答になるか教えていただければ幸いです。

コードを簡潔に説明すると、まず行を最下段から探索してすべて'.'ならば上に詰める。
次に列を右から探索して同様に左に詰める。という処理を行っているつもりです。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

(C++ GCC 9.2.1)
ソースコード

#include <bits/stdc++.h> using namespace std; int main() { int H, W; cin >> H >> W; vector<vector<char>> board(101,vector<char> (101,'a')); for (int i = 0; i < H; i++) { for (int j = 0; j < W; j++) { cin >> board.at(i).at(j); } } int counth = 0; for (int i = H - 1; i >= 0; i--) { for (int j = 0; j < W; j++) { if (board.at(i).at(j) == '.') { } else { break; } if (j == W - 1) { for (int k = i; k < W; k++) { board.at(k) = board.at(k + 1); } counth++; } } } H -= counth; int countw = 0; for (int j = W - 1; j >= 0; j--) { for (int i = 0; i < H; i++) { if (board.at(i).at(j) == '.') { } else { break; } if (i == H - 1) { for (int k = j; k < W ;k++) { for (int l = 0; l < H; l++) { board.at(l).at(k) = board.at(l).at(k + 1); } } countw++; } } } W -= countw; for (int i = 0; i < H; i++) { for (int j = 0; j < W; j++) { cout << board.at(i).at(j); if (j == W - 1) { cout << endl; } } } }

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

回答ではありませんが、AtCoderのテストケースはある程度公開されています。今回の問題は以下です。
abc107_b

投稿2021/12/15 10:41

can110

総合スコア38278

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gaussaaaa

2021/12/15 11:02

テストケースが公開されていたのですね。当該ページにはなかったので知りませんでした。 おかげさまで誤りを修正できました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問