結果
問題 |
No.135 とりあえず1次元の問題
|
ユーザー |
![]() |
提出日時 | 2015-01-26 01:05:25 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,131 bytes |
コンパイル時間 | 297 ms |
コンパイル使用メモリ | 29,312 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2025-01-03 03:12:56 |
合計ジャッジ時間 | 14,577 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 WA * 1 |
other | AC * 7 WA * 15 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:15:15: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 15 | scanf ( "%d" , &BufNums ); | ~~~~~~^~~~~~~~~~~~~~~~~~~ main.cpp:23:23: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 23 | scanf ( "%d" , &Current); | ~~~~~~^~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h> int *pX = nullptr; int N = 0; int main ( void ) { int BufNums; scanf ( "%d" , &BufNums ); pX = new int [ BufNums ]; N = 0; int Current; bool bExistNumber; for ( int i = 0; i < BufNums; i++ ) { scanf ( "%d" , &Current); bExistNumber = false; /*for ( int j = 0; j < N; j++ ) { if ( Current == *( pX + j ) ) { bExistNumber = true; break; } }*/ if ( bExistNumber == false ) { *( pX + N ) = Current; N++; } } if ( N != 1 ) { int MinNum; int buf; for ( int i = 0; i < (N-1); i++ ) { MinNum = i; for ( int j = i+1; j < N; j++ ) { if ( *( pX + i ) > *( pX + j ) ) MinNum = j; } buf = *( pX + i ); *( pX + i ) = *( pX + MinNum ); *( pX + MinNum ) = buf; } int diff = 0 , diffbuf; diff = *( pX + 0 ) - *( pX + 1 ); if ( diff < 0 )diff *= -1; for ( int i = 1; i < N - 1; i++ ) { diffbuf = *( pX + i ) - *( pX + i + 1 ); if ( diffbuf < 0 )diffbuf *= -1; if ( ( diff == 0 ) || ( diff > diffbuf ) ) diff = diffbuf; } printf ( "%d\n" , diff ); } else { printf ( "0\n" ); } delete []pX; return 0; }