2018 10 17 膜你賽 day1T1 分數

2021-08-29 07:54:09 字數 2302 閱讀 5320

題目:

題目描述

老虎和蒜頭是好朋友。

秋天到了,森林中學又迎來了一年一度的招生季。

為了與科技時代接軌,森林中學今年即將使用全新的答題卡。

只要考試時學生對答題卡進行規範性的填塗,考試後不用多久就能得到大家考試的成績了。

然而,被聘請為顧問的老虎卻犯了難。原來,在數學考試中,往往會出現如 2

/3,√23這樣的答案,

而這樣的答案在答題卡上沒有填塗的方案——答題卡上只能夠填塗在 0 至 999 之間的整數。

於是老虎靈機一動,想出了乙個絕妙的主意:

如果答案是乙個分數 x/y 的話,如果該分數已經不可約分,那麼學生需要在答題卡上填塗 x+y ;

否則,學生需要約分後再填塗。

例如,答案為 4

/6 時應該填塗 5 ,而答案是 233

/1 時應該填塗 234 。

不過,這樣似乎並不能解決所有的問題,雖然答案是 1996

/2 時可以填塗 999 ,

但答案是 1998

/2 時應當填塗 1000 ,但答題卡已經不允許填塗這麼大的數字了。

因此,在出題時一定要謹慎,避免這種情況的發生。

一天,老虎和蒜頭聊起這事。於是蒜頭產生了乙個奇怪的問題:給定 a≤b,c≤d ,那麼對於所有 a≤x≤b,c≤y≤da≤x≤b,c≤y≤d ,有多少分數 x/y 是可以被填塗進答題卡的?你現在的任務就是解決這樣的問題。

輸入格式

共一行四個正整數 a,b,c,da,b,c,d 。

輸出格式

共一行乙個整數,表示可以被填塗進答題卡的數字個數。由於答案可能很大,你只要輸出其對 109

+7 取模的答案即可。

樣例樣例一

input58

36output

16樣例二

input

2018

2019

2018

2019

output

2資料範圍及限制

對於 100

% 的資料,1≤a,b,c,d≤1012

,a≤b,c≤d1≤a,b,c,d≤1012

,a≤b,c≤d 。

對於 20

% 的資料,1≤a,b,c,d≤101≤a,b,c,d≤10 。

對於 40

% 的資料,1≤a,b,c,d≤10001≤a,b,c,d≤1000 。

對於 60

% 的資料,1≤(b−a+

1)×(d−c+

1)≤1061≤(b−a+

1)×(d−c+

1)≤106 。

對於另外 20

% 的資料,1≤a,b,c,d≤10^6

1≤a,b,c,d≤10

^6 。

時間限制:

1s空間限制:

512mb

思路:

列舉最簡分數i/j,求出乙個k的範圍,使得 a<=ik<=b,c<=jk<=d。

**:

//by juruozar

#pragma gcc optimize(2)

#include

using

namespace std;

#define maxn 20000

#define read(x) scanf("%d",&x);

int n;

char a[maxn+5]

;char b[maxn+5]

;int ans[maxn+5]

,cnt=0;

intmain()

} ans[

++cnt]

=i;continue

; end:

; s=0;

for(

int j=

1;j<=n;j++

) a[j]

=b[j]

;for

(int j=

1+i;j<=n-i;j++)}

for(

int j=

1;j<=i;j++)if

(s<

2) ans[

++cnt]

=i; flag:;}

int c=

(cnt-1)

/(1e5)+1

;printf

("%d\n"

,cnt)

;for

(int i=

1;i*c<=cnt;i++

)printf

("%d "

,ans[i]);

return0;

}

noip膜你賽day2 總結

先膜拜一遍gen4512大牛 然後是總結 第一題,沒有選擇線段樹,因為我並沒有想到要去驗證azui具有結合律,不過交換率倒是去驗證過,很顯然失敗了,但後面我找到乙個規律,於是字首和直接搞定。成功ac。後來發現這道題的運算法則叫 同或 相同為1,相異為0 對於這種題,定義了一種新的運算,我認為,突破點...

膜你賽 ROAD (跑路)

小a的家到公司的路可以看做乙個有向圖,小a家為點1,公司為點n,每條邊長度均為一千公尺。假設小a每秒鐘可以跑2 k千公尺 k是任意數 當然,所以總跑路長度不能超過maxlongint千公尺。問最少需要幾秒才能到公司。資料保證1到n至少有一條路徑。第一行兩個整數n,m,表示點的個數和邊的個數。接下來m...

2018 10 30 膜你賽 火柴

題目 題目描述 p同學總共有k根火柴,分別放在擺成一列的n個火柴盒內,保證k是n的倍數。p同學想要每個火柴盒都有相同數目的火柴,每次他可以從乙個火柴盒中拿一根火柴放到相鄰的火柴盒中。他想知道他最少要移動多少次。輸入輸出格式 輸入格式 第一行乙個整數n,表示火柴盒數。第二行n個整數a 1,a 2,a ...