結果

問題 No.69 文字を自由に並び替え
コンテスト
ユーザー Syuutaro
提出日時 2018-03-14 19:23:29
言語 C++11
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=gnu++11 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 683 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 639 ms
コンパイル使用メモリ 64,104 KB
実行使用メモリ 7,972 KB
最終ジャッジ日時 2026-05-25 00:58:59
合計ジャッジ時間 1,266 ms
ジャッジサーバーID
(参考情報)
judge2_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 15
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'int main()':
main.cpp:22:22: warning: 'length' may be used uninitialized [-Wmaybe-uninitialized]
   22 |     for (int i = 0;i < length;i++){
      |                    ~~^~~~~~~~
main.cpp:11:9: note: 'length' was declared here
   11 |     int length;
      |         ^~~~~~

ソースコード

diff #
raw source code

#include <stdio.h>
#include <map>
int main(){
    //iuput
    char A[10+1];
    char B[10+1];
    scanf("%s",A);
    scanf("%s",B);

    //string length
    int length;
    for (int i = 0;i < 10+1;i++){
        if (A[i] == '\0'){
            length = i;
            break;
        }
    }

    //create map
    std::map<char,int> count_A;
    std::map<char,int> count_B;
    for (int i = 0;i < length;i++){
        count_A[A[i]] = 0;
        count_B[B[i]] = 0;
    }
    for (int i = 0;i < length;i++){
        count_A[A[i]]++;
        count_B[B[i]]++;
    }

    //output
    if (count_A == count_B){
        printf("YES\n");
    }else{
        printf("NO\n");
    }
    return 0;
}
0