結果
| 問題 | 
                            No.16 累乗の加算
                             | 
                    
| コンテスト | |
| ユーザー | 
                             TLwiegehtt
                         | 
                    
| 提出日時 | 2015-07-12 23:31:44 | 
| 言語 | C90  (gcc 12.3.0)  | 
                    
| 結果 | 
                             
                                WA
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 495 bytes | 
| コンパイル時間 | 106 ms | 
| コンパイル使用メモリ | 21,376 KB | 
| 実行使用メモリ | 6,948 KB | 
| 最終ジャッジ日時 | 2024-07-08 06:11:26 | 
| 合計ジャッジ時間 | 582 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge2 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 4 WA * 10 | 
コンパイルメッセージ
main.c: In function ‘main’:
main.c:11:19: warning: format ‘%lld’ expects argument of type ‘long long int *’, but argument 2 has type ‘int *’ [-Wformat=]
   11 |         scanf("%lld %d", &x, &n);
      |                ~~~^      ~~
      |                   |      |
      |                   |      int *
      |                   long long int *
      |                %d
main.c:11:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   11 |         scanf("%lld %d", &x, &n);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
main.c:20:17: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   20 |                 scanf("%lld", &a);
      |                 ^~~~~~~~~~~~~~~~~
            
            ソースコード
#include <stdio.h>
#define MOD	(1000003);
int main(void){
	int i;
	int x,n;
	long long int sum = 0;
	long long int mul = 1;
	long long int arr[10005];
	
	scanf("%lld %d", &x, &n);
	
	for(i=0;i<=10000;i++){
		arr[i] = mul % MOD;
		mul = (mul*x) % MOD;
	}
	for(i=0;i<n;i++){
		long long int a;
		mul = 1;
		scanf("%lld", &a);
		
		while(10000 < a){
			mul = (mul * arr[10000]) % MOD;
			a -= 10000;
		}
		
		mul = (mul * arr[(int)a]) % MOD;
		sum += mul;
	}
	
	printf("%lld\n", sum);
	return 0;
}
            
            
            
        
            
TLwiegehtt