A. Vova and Train ( Codeforces Round #515 (Div. 3) )
題意:一條 L 長的路,一列車長在這條路的 l 到 r 之間,只有在 v 倍數時有燈,但是在 l 到 r 之間的燈是看不見的,問最大看見的燈的個數?
題解:L / v 表示總共的燈的個數, r / v 、( l - 1 ) / v 表示前 r 、( l - 1 ) 長的路有多少燈,減一下就可以了。
( 難題補不上了,QAQ,寫個水題,放鬆一下)
#include <iostream> #include <bits/stdc++.h> using namespace std; int main() { int t,L,v,l,r,sum,num; while(~scanf("%d",&t)) { while(t--) { scanf("%d%d%d%d",&L,&v,&l,&r); sum = 0; num = 0; sum = L / v; num = r / v - (l - 1) / v; printf("%d\n",sum - num); } } return 0; }
相關推薦
A. Vova and Train ( Codeforces Round #515 (Div. 3) )
題意:一條 L 長的路,一列車長在這條路的 l 到 r 之間,只有在 v 倍數時有燈,但是在 l 到 r 之間的燈是看不見的,問最大看見的燈的個數? 題解:L / v 表示總共的燈的個數, r / v 、( l - 1 ) / v 表示前 r 、( l - 1 ) 長的路有多少燈,
Codeforces Round #515 (Div. 3)A. Vova and Train【水題】
A. Vova and Train time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vova
Codeforces Round #515 (Div. 3) A. Vova and Train
題解 題目大意 總長度為L 每到v的倍數位置都有一個路燈 現有一火車在[l, r]問在火車遮擋後 能看見多少個路燈 (r - 1) / v計算左側出現路燈數量L / v - r / v計算右側出現路燈數量 AC 程式碼 #include <stdio.h&
Codeforces Round #515 (Div. 3) E. Binary Numbers AND Sum
由題意可以知道a&b產生的值對答案有m次貢獻,按次算貢獻值是肯定超時的,所以按位算貢獻,觀察可以發現只有a這個二進位制數裡的1對答案有貢獻,貢獻值為pre[i]*這個1對應的值(即假如這個1是第i為,則這個1對應的值就是2^(i-1)),pre[i]表示二進位制數b第i位及
Codeforces Round #515 (Div. 3) A(思維)
題意:找1~L之間 v 的倍數的個數,在區間[l,r]之間的不能算 思路:1到n之間v的倍數個數為n/v向下取整,因為是閉區間,所以區間裡v的倍數個數為r/v-(l-1)/v,l為什麼要減一?因為l-1/v是1到l-1中v的倍數個數。 #include<bits/stdc++.h>
Codeforces Round #515 (Div. 3)E. Binary Numbers AND Sum【數學】
E. Binary Numbers AND Sum time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output
Codeforces Round #515 (Div. 3) A、B、C、D
A. Vova and Train time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vo
Codeforces Round #515 (Div. 3) A、B、C、D
A. Vova and Train time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vova
Codeforces Round #515 (Div. 3)
mat queue min src rain d+ round () 圖片 Codeforces Round #515 (Div. 3) 1 #include<bits/stdc++.h> 2 #include<iostream> 3 #i
Codeforces Round #515 (Div. 3) D. Boxes Packing
比賽的時候這題的題意一直沒看懂,後面才明白意思就是有n個物品,然後要求最多可以挑選出多少物品,挑選過程是從第一給物品開始往右邊挑選,對於每一個物品,如果目前的盒子剩餘空間是>=該物品的體積的就直接放進盒子,繼續挑選下一個物品,若目前的盒子剩餘空間是<該物
Codeforces Round #515 (Div. 3) B(模擬)
題意:在數列中值為1的位置有1個加熱器,它能覆蓋它的左邊第 r-1 位置到它的右邊 r-1 的位置,問最少多少個加熱器能覆蓋整個區間。 思路:模擬這個過程,首先now=1,然後遍歷所有位置,找到最遠的滿足now這個位置能加熱的點,再另now=i+r-1+1,之所以要+1,是因為,i+r-1這個位
Codeforces Round #515 (Div. 3) E(模擬+字首和)
題意:a和b是兩個01字串,現要計算a&b+a&b>>1+a&b>>2+……(直到b=0) 思路: 因為a和b的長度不確定,所以給短的那個在前面補上0,因為b每一次往右移,所以可以計算b的每一位上的貢獻,這個貢獻就是這一位及前面一共有多少1,為什麼
Codeforces Round #515 (Div. 3) D(模擬)
題意:有m個箱子,每個箱子容量為k,問你最多能裝多少個物品,你只能依次捨棄前面的,後面的必須全部裝完。 思路:題目意思是裝過東西的箱子如果你又拿了一個箱子,那麼以前的箱子就裝不了了,即使還能裝。所以倒著遍歷物品,模擬一下就行了。 #include<bits/stdc++.h> u
Codeforces Round #515 (Div. 3) C (模擬)
題意: 三種操作: L id ,將編號為id的書放在最左邊; R id,將編號為id的書放在最右邊; ?id,查詢編號為id的書左右兩邊哪一邊的數量最小,輸出最小值。 思路: 用l和r表示下一個左或右的位置,然後模擬就行了。 #include<bits/stdc++
Codeforces Round #515 (Div. 3) ABCDEF比賽總結
做了4題,ABCE。感覺不是很滿意。1、D題題意讀不懂,剛開始想法對了,但是可惜題意讀錯了一直WA。2、F題沒來得及看。 感覺本場比賽的題目還算可以。 A:三行系列。讀懂題意就能做。因為只除去了中間的部分。但是感覺放在div3的A題還是稍微難了點。 #include<bits/st
Codeforces Round #515 (Div. 3)C. Books Queries【模擬,思維】
C. Books Queries time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You h
Codeforces Round #515 (Div. 3)B. Heaters【模擬,思維】
B. Heaters time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vova's house
Codeforces Round #515 (Div. 3) B. Heaters
題解 題目大意 房間為一條直線長度為n 如果pos位置有加熱器並且開啟則能加熱[pos - r + 1, pos + r - 1]區域 告訴你哪些位置有加熱器0無1有 問最少開啟多少加熱器能把整個房間加熱 i遍歷每個未加熱的位置 使用last記錄上次開啟的加熱器
Codeforces Round #515 (Div. 3) B. HeatersB. Heaters
#include <iostream> #include <vector> #include <algorithm> #include <cstring> #include <queue> usi
Codeforces Round #515 (Div. 3)-F. Yet another 2D Walking
思路:貪心+DP:對於同一層的點,最佳的路線是從一端0走到另一端1,只要的選擇是兩層間的走法,只有四種走法,分別是從一層兩端到另一層兩端的走法。因此先求出所有層的步數,在用dp[i][j]來表示到第i層時在j端時的最小步數 Code: #include<io