結果

問題 No.370 道路の掃除
コンテスト
ユーザー Hank
提出日時 2016-05-24 19:23:19
言語 C90
(gcc 12.4.0)
コンパイル:
gcc-12 -O2 -std=c90 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
CE  
(最新)
WA  
(最初)
実行時間 -
コード長 649 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 82 ms
コンパイル使用メモリ 21,700 KB
最終ジャッジ日時 2026-02-23 21:21:48
ジャッジサーバーID
(参考情報)
judge5 / judge5
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
main.c: In function ‘main’:
main.c:16:3: error: C++ style comments are not allowed in ISO C90
   16 |   //-----sort--------
      |   ^
main.c:16:3: note: (this will be reported only once per input file)
main.c:9:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    9 |   scanf("%d %d",&n,&m);
      |   ^~~~~~~~~~~~~~~~~~~~
main.c:13:5: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   13 |     scanf("%d",&d[i]);
      |     ^~~~~~~~~~~~~~~~~

ソースコード

diff #
raw source code

#include <stdio.h>
#include <stdlib.h>
int main(){
  int n, m, *d;
  int i,j,buff;
  int min, d_num, d_inside=0;
  int result = 0;
  
  scanf("%d %d",&n,&m);
  
  d=(int*)malloc(sizeof(int)*n);
  for(i=0;i<m;i++){
    scanf("%d",&d[i]);
  }

  //-----sort--------
  for(i=0;i<m-1;i++){
    min = 10000;
    for(j=i;j<m;j++){
      buff=abs(d[j]-d_inside);
      if(buff<min){
	min = buff;
	d_num = j;
      } 
    }
     d_inside=d[d_num];
     buff=d[i];
     d[i]=d[d_num];
     d[d_num]=buff;
  }
  //-----------------
  result += d[0];
  for(i=1;i<n;i++){
    result += abs(d[i]-d[i-1]);
  }
  printf("%d\n",result);
  
  free(d);
  return 0;
}
0