結果

問題 No.150 "良問"(良問とは言っていない
ユーザー Yang33Yang33
提出日時 2016-05-04 22:19:59
言語 C++11
(gcc 13.3.0)
結果
AC  
実行時間 6 ms / 5,000 ms
コード長 773 bytes
コンパイル時間 531 ms
コンパイル使用メモリ 57,844 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-10-11 02:01:13
合計ジャッジ時間 1,201 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 20
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:22:63: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   22 |                                 int hamming1 = Hamming(m + j, "good", 4);
      |                                                               ^~~~~~
main.cpp:23:63: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   23 |                                 int hamming2 = Hamming(m + k, "problem", 7);
      |                                                               ^~~~~~~~~

ソースコード

diff #

#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;

int Hamming(char *str1, char *str2, int num);

int main(void)
{

	int a,i,j,k,n;
	char m[101];

	cin >> a;

	for (i = 0; i < a; i++) {
		cin >> m;
		int strlen1 = strlen(m);
		int ans = 11;
		for (j = 0; j <= strlen1 - 11; j++) {
			for (k = j + 4; k <= strlen1 - 7; k++) {
				int hamming1 = Hamming(m + j, "good", 4);
				int hamming2 = Hamming(m + k, "problem", 7);
				ans = min(ans, hamming1 + hamming2);

			}
		}
		cout << ans << endl;
	}



	return 0;
}


int Hamming(char *str1, char *str2, int num) {
	int ham = 0;
	for (int i = 0; i < num; i++) {
		ham += (str1[i] != str2[i]);
	}
	return ham;
}
/*
n桁
good(4) 1 n-7まで(n-11?)
problem(7) goodの後ろ n-7まで






*/
0