結果
| 問題 | No.677 10^Nの約数 | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2018-06-08 15:51:30 | 
| 言語 | C (gcc 13.3.0) | 
| 結果 | 
                                WA
                                 
                             | 
| 実行時間 | - | 
| コード長 | 632 bytes | 
| コンパイル時間 | 200 ms | 
| コンパイル使用メモリ | 30,592 KB | 
| 実行使用メモリ | 6,948 KB | 
| 最終ジャッジ日時 | 2024-06-30 10:40:17 | 
| 合計ジャッジ時間 | 953 ms | 
| ジャッジサーバーID (参考情報) | judge4 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | WA * 2 | 
| other | AC * 1 WA * 16 | 
コンパイルメッセージ
main.c:4:11: warning: conflicting types for built-in function 'pow'; expected 'double(double,  double)' [-Wbuiltin-declaration-mismatch]
    4 | long long pow(long long a,long long n){
      |           ^~~
main.c:3:1: note: 'pow' is declared in header '<math.h>'
    2 | #include<stdlib.h>
  +++ |+#include <math.h>
    3 | 
main.c: In function 'main':
main.c:29:35: warning: passing argument 4 of 'qsort' from incompatible pointer type [-Wincompatible-pointer-types]
   29 |     qsort(arr,q,sizeof(long long),sortfnc);
      |                                   ^~~~~~~
      |                                   |
      |                                   long long int (*)(const void *, const void *)
In file included from main.c:2:
/usr/include/stdlib.h:839:34: note: expected '__compar_fn_t' {aka 'int (*)(const void *, const void *)'} but argument is of type 'long long int (*)(const void *, const void *)'
  839 |                    __compar_fn_t __compar) __nonnull ((1, 4));
      |                    ~~~~~~~~~~~~~~^~~~~~~~
            
            ソースコード
#include<stdio.h>
#include<stdlib.h>
long long pow(long long a,long long n){
    long long r=1,i;
    for(i=0;i<n;i++){r*=a;}
    return r;
}
long long sortfnc(const void *a,const void *b) {
  if(*(long long *)a < *(long long *)b){
    return -1;
  }
  else if(*(long long *)a == *(long long *)b){
    return 0;
  }
  return 1;
}
int main(){
    long long q,i,j,n,arr[512];
    scanf("%lld",&n);
    for(i=0;i<=n;i++){
        for(j=0;j<=n;j++){
            arr[n*i+j]=pow(2,i)*pow(5,j);
        }
    }
    q=(n+1)*(n+1);
    qsort(arr,q,sizeof(long long),sortfnc);
    for(i=0;i<q;i++){printf("%lld\n",arr[i]);}
    return 0;
}
            
            
            
        