這次的題...很水...然而還是差點爆零
t1 題目簡述:給定乙個序列,求區間最大子段和(帶修改操作)。
n<=500000,m<=100000
解題思路:線段樹維護即可。(gss3原題...資料範圍都不變...出題人好懶)
#include#include#include
#include
#include
#include
#define inf 0x3f3f3f3f
using
namespace
std;
int n,m,a[500010
];struct
uio
intlmx,rmx,mx,sum;
}tree[
2000010
];void pushup(int
x)void build(int now,int l,int
r)
int mid=(l+r)>>1
; build((now
<<1
),l,mid);
build(((now
<<1)|1),mid+1
,r);
pushup(now);
}void revise(int now,int l,int r,int to,int
k)
int mid=(l+r)>>1
;
if(to<=mid) revise((now<<1
),l,mid,to,k);
else revise(((now<<1)|1),mid+1
,r,to,k);
pushup(now);
}uio query(
int now,int l,int r,int l,intr)}
intmain()
}return0;
}
t2 題意簡述:有n個格仔,每次最多走k個,問走到第n格有多少種走法。答案對7777777取模。
1<=n<=2^31-1,1<=k<=10
解題思路:一看n這麼大,考慮矩陣加速。
發現遞推過程類似斐波那契數列,因此構造矩陣如下。(以k=5為例)
0000101
0010
0101
0001
1
然後求qpow(matrix.a,n)即可。
注:以下**來自sdfzsyq大佬。(其實就是我懶...)
#include#include#include
#include
#define ll long long
using
namespace
std;
const
int mod = 7777777
;int
n,k;
struct
mat mat
operator*(const mat &h)
}f,ans,st;
inline
void fast_pow(mat a,intb)}
intmain()
for(register int i=2;i<=k;i++) f.a[i][i-1]=1
;
for(register int i=1;i<=k;i++) f.a[i][k]=1
;
for(register int i=1;i<=k;i++) st.a[i][i]=1
; fast_pow(f,n);
printf(
"%lld\n
",st.a[k][k]);
return0;
}
t3 題意簡述:求矩形面積並。
n<=100,座標數值絕對值<=10^8
解題思路:掃瞄線。
由於資料太水,因此本題可以用o(n^2)水過。
坐在我旁邊的erkkierkko大佬說n應該開到10^6。
如果按照erkkierkko大佬的資料範圍,本題**應加上線段樹優化+卡常。
複雜度o(nlogn)。
#include#include#include
#include
#include
#include
#define inf 100000001
#define inf 0x3f3f3f3f
#define ll long long
using
namespace
std;
ll n,ans,a[
210],sec[210][110],sec1[210][110],vis[110
];struct
uiomat[
110];
struct
oiutmp[
110];
bool
cmp(oiu x,oiu y)
intmain()
sort(a+1,a+1+2*n);
ll num=unique(a+1,a+1+2*n)-a-1
;
for(ll i=1;i<=n;i++)
for(ll i=1;i<=200;i++)
for(ll k=1;k<=n;k++)
if(vis[k])
tmp[++cnt].u=mat[k].u,
tmp[cnt].d=mat[k].d;
sort(tmp+1,tmp+1+cnt,cmp);
ll mu=tmp[1].u,md=tmp[1
].d;
for(ll k=2;k<=cnt;k++)
num+=mu-md;
ans+=num*(sec1[i+1][1]-sec1[i][1
]); }
printf(
"%lld\n
",ans);
return0;
}
2018 7 20學習日誌
學習日誌 今日學習任務 基於微控制器的電子秒錶設計 開始,暫停,繼續,清空 今日任務完成情況 詳細說明本日任務是否按 計畫完成,開發的 量 按照計畫和要求,完成當天的學習任務。對 進行進一步的修改和完善。今日開發中出現的問題彙總 思考如何在基本 的基礎上進行舉一反三以及進一步的拓展,使其能夠實現更多...
2017 9 7 模擬考試
問題描述 一張長度為 的紙帶,我們可以從左至右編號為0 紙帶最左端標號為 0 現在有 次操作,每次將紙帶沿著某個位置進行摺疊,問所有操作之後紙帶 的長度是多少。輸入格式 第一行兩個數字 如題意所述。接下來一行 個整數代表每次摺疊的位置。輸出格式 一行乙個整數代表答案。樣例輸入 5 2 3 5 樣例輸...
RHSCA模擬考試
開始考試 桌面是個黑框子 點選reboot按鈕,破解密碼 開機成功,輸入startx進入圖形介面 不能複製,要在物理機用ssh root 172.25.0.11 遠端連線,就可以複製貼上了 hostname server.reorigion5.example.com 四級網域名稱 有問題 10.配置...