結果
問題 |
No.335 門松宝くじ
|
ユーザー |
![]() |
提出日時 | 2016-01-29 02:15:18 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,563 bytes |
コンパイル時間 | 542 ms |
コンパイル使用メモリ | 64,580 KB |
実行使用メモリ | 10,148 KB |
最終ジャッジ日時 | 2024-09-21 17:50:16 |
合計ジャッジ時間 | 6,002 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 2 WA * 1 TLE * 1 -- * 6 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:35:30: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 35 | scanf("%d", &E[i][j]); | ~~~~~^~~~~~~~~~~~~~~~
ソースコード
// No335.cpp : Defines the entry point for the console application. // #include <assert.h> #include <cstdio> #include <cstdlib> #include <cstring> #include <iostream> #include <string> #include <algorithm> #include <vector> #include <climits> using namespace std; typedef unsigned char uchar; typedef unsigned int uint; typedef long long ll; typedef unsigned long long ull; int N; int M; vector<int> E[3]; bool kado(int a, int b, int c) { if (a == b || b == c || a == c) return false; return (b < a && b < c) || (b > a && b > c); } int main() { cin >> N >> M; for (int i = 0; i < M; i++) { E[i].resize(N); for (int j = 0; j < N; j++) { scanf("%d", &E[i][j]); } } #define kArraySize (800 * 3 + 1) double kitaiMax = 0; int iKitaiMax = 0; for (int i = 0; i < M; i++) { int sums[kArraySize] = {0}; int kadoCount = 0; for (int i1 = 0; i1 < N-1; i1++) { for (int i2 = i1+1; i2 < N; i2++) { for (int i3 = 0; i3 < N; i3++) { if (i3 == i1 || i3 == i2)continue; int ii1 = min(i1, i3); int ii2 = ii1!=i3 ? min(i2, i3) : i2; int ii3 = max(i2, i3); if (kado(E[i][ii1], E[i][ii2], E[i][ii3])) { int sum = E[i][ii1] + E[i][ii2] + E[i][ii3]; sums[sum] ++; } kadoCount++; } } } double kitaiSum = 0; for (int j = 0; j < kArraySize; j++) { if (sums[j]) { kitaiSum += (double)j * (double)sums[j] / (double)kadoCount; } } //printf("%lf\n", kitaiSum); if (kitaiSum > kitaiMax) { kitaiMax = kitaiSum; iKitaiMax = i; } } cout << iKitaiMax << endl; return 0; }