結果
| 問題 |
No.749 クエリ全部盛り
|
| コンテスト | |
| ユーザー |
👑 testestest
|
| 提出日時 | 2018-04-18 19:02:57 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 558 bytes |
| コンパイル時間 | 177 ms |
| コンパイル使用メモリ | 30,720 KB |
| 実行使用メモリ | 24,244 KB |
| 最終ジャッジ日時 | 2024-06-27 04:31:51 |
| 合計ジャッジ時間 | 5,630 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 15 TLE * 1 -- * 4 |
ソースコード
#include <stdio.h>
#define ll long long
#define rep(i,l,r)for(ll i=l;i<r;i++)
#define M 1000000007
ll f[1000010];
ll a[1000010];
int main(){
f[1]=1;
rep(i,2,1000003)f[i]=(f[i-1]+f[i-2])%M;
int Q;
scanf("%*d%d",&Q);
while(Q--){
int q,l,r,k;
scanf("%d%d%d%d",&q,&l,&r,&k);
if(q==0){
ll ans=0;
rep(i,l,r+1)ans=(ans+a[i])%M;
printf("%d\n",ans*k%M);
}
else if(q==1)rep(i,l,r+1)a[i]=k;
else if(q==2)rep(i,l,r+1)a[i]=(a[i]+k)%M;
else if(q==3)rep(i,l,r+1)a[i]=a[i]*k%M;
else if(q==4)rep(i,l,r+1)a[i]=(a[i]+k*f[i])%M;
}
return 0;
}
testestest