NOIP2010接水問題(普及組T2)————模擬,佇列
題解:本題主要考查模擬,佇列,因為順序已經擺好了,所以關鍵在於節水結束時的替換,將下個的量賦給已結束的,就可以啦。
程式碼如下:
#include <iostream> using namespace std; int s[11000],num,t,n,m; int main() { cin>>n>>m; for(int i=1;i<=n;i++) cin>>s[i]; t=m+1; while(t<=n+m) { for(int i=1;i<=m;i++) { s[i]--; if(s[i]==0) { s[i]=s[t]; t++; } } num++; } cout<<num; return 0; }
相關推薦
NOIP2010接水問題(普及組T2)————模擬,佇列
題解:本題主要考查模擬,佇列,因為順序已經擺好了,所以關鍵在於節水結束時的替換,將下個的量賦給已結束的,就可以啦。 程式碼如下: #include <iostream> using namespace std; int s[11000],num,t,n,m; int
NOIP2008排座位(普及組T2)————貪心,排序
題解:本題主要考查貪心,排序。先記錄行列的分隔數,再排序將需要裝入桶中(重點,因為要輸出的不只是最大值的序號)。 程式碼如下: #include<iostream> #include<algorithm> using namespace std; int m,n,
NOIP2001數的計算(普及組T1)————數學,遞迴,遞推
題解:本題可尋找規律,a(i)(偶數)=a(i-1)+a(i/2),a(i)(奇數)=a(i-1) 程式碼如下: #include<iostream> using namespace std; int a[100000]={0,1}; int m
洛谷P1223 排隊接水(普及)————貪心,數論
題解:本題主要考查貪心,數論。小學奧數題接水時間少的放前面,求和 sum+=j*t[i].time。 程式碼如下: #include<iostream> #include<cstdio> #include<algorithm> using namesp
NOIP2004合併果子(提高組T2)————優先佇列STL,貪心
題解:本題主要考查優先佇列STL,貪心。若要體力最小,就要將最小的果合併,合併後的果子再入隊。 程式碼如下: #include<iostream> #include<queue> using namespace std; priority_queue<in
NOIP2007守望者的逃離(普及組T3)————動態規劃,貪心
題解:本題主要考查動態規劃,貪心。分析題意知:閃現一般比跑快。所以一開始用閃現,用max比較,可得答案。注意(要更新值,更新值,更新值!) 程式碼如下: #include<iostream> #include<algorithm> using namespace
NOIp2012擺花(普及組T3)————動態規劃
題解:本題主要考查動態規劃。方程式dp[i][j]=dp[i-1][j-k]+dp[i][j],f[i][j]指擺第i個花後總共擺了j盆的方案數,第i種花由i-1種決定,k表示這種花擺多少要列舉,j−k表示沒有用這k盆花裝飾時的方案數。 程式碼如下: #include<iostre
NOIp2008傳球遊戲(普及組T3)————動態規劃
題解:本題主要考查動態規劃。因為球只能左右傳,所以i同學只能來自於的左邊一個同學(i-1)和右邊一個同學(i+1)。傳j次球的方案數就是j-1次傳到左邊和右邊的方案數之和。 f[i][k]=f[i-1][k-1]+f[i+1][k-1],(i=1或n時,需單獨處理)。 程式碼如下: #i
洛谷 P1982 小朋友的數字(NOIp2013普及組T3)
文件 ret vijos 觀察 個數 color 符號 朋友 麻煩 題目描述 有 n 個小朋友排成一列。每個小朋友手上都有一個數字,這個數字可正可負。規定每個小朋友的特征值等於排在他前面(包括他本人)的小朋友中連續若幹個(最少有一個)小朋友手上的數字之和的最大值。 作為這些
題解:子矩陣(NOIP2014普及組T4)
+= out bsp tdi 又是 style 預處理 sizeof 表示 又是dp 暴力枚舉會T 考慮先固定一個變量,比如先枚舉行 然後預處理每行之間的絕對值,每列之間的絕對值 然後dp進行轉移 註意記錄選擇的行數 轉移記得加上新選的列的行之間的絕對值,即w[
[OI]Noip 2018(普及組)總結
應該 str ora clu ios 老師 失誤 play max 考砸了,還有原諒我代碼十分有限的可讀性。 從一年前初一九月到現在18年10月接觸OI已經有一年了。幾次模擬賽也自我感覺良好,都過了一等的線,自己考試的心態當時也放的挺平。但也沒想到會考出這麽差的分數。
NOIp2004花生採摘(普及組)————搜尋,模擬
題解:本題主要考查搜尋,模擬,要審題別把題目複雜化。關鍵在於算時間,與前一個的座標差再加採摘時間這就是時間。 程式碼如下: #include<bits/stdc++.h> using namespace std; int m,n,i,j,gg=1,t,lo,sum; stru
2126. OIBH杯第三次模擬賽(普及組)Problem 3 : maxsum 最大約數和
題目描述 選取和不超過S的若干個不同的正整數,使得所有數的約數(不含它本身)之和最大。 輸入 輸入一個正整數S。 輸出 輸出最大的約數之和。 樣例輸入 11 樣例輸出 9 資料範圍限制 對於30%的資料, S<=10; 對於100
NOIp2003乒乓球(普及組)————模擬
題解:本題主要考查模擬,不難但題面是一大坑,主要還是考細心。 程式碼如下: #include<iostream> #include<stdlib.h> using namespace std; int no1=0,no2=0,No1=0,No2=0,i=1,q=0
NOIP2002普及組第一題【級數求和】題解 (普及山東tyd)
一道水題,我就不想多說什麼了。 題目描述 已知:Sn= 1+1/2+1/3+…+1/n。顯然對於任意一個整數K,當n足夠大的時候,Sn大於K。 現給出一個整數K(1<=k<=15),要求計算出一個最小的n;使得Sn>K。 輸入輸出格式 輸入格式: 一個正整數
OIBH杯第三次模擬賽(普及組)Problem 3 : maxsum 最大約數和
題意: 給一個s,用和不超過s 的數使得他們的因數和最大,不包括本身。 思路: 水dp f[i]:=f[k]+f[n-k]; 程式: const maxn=1000; var
HFOI2017.7.13校內賽(普及組)題解
T1:分解因數 描述 給出一個正整數a,要求分解成若干個正整數的乘積,即a = a1 * a2 * a3 * ... * an,並且1 < a1 <= a2 <= a3 <= ... <= an,問這樣的分解的種數有多少。注意到a =
T1319 排隊接水(#Ⅱ- 6)
【題目描述】 有n個人在一個水龍頭前排隊接水,假如每個人接水的時間為Ti,請程式設計找出這n個人排隊的一種順序,使得n個人的平均等待時間最小。 【輸入】 共兩行,第一行為n(1≤n≤1000);第二行分別表示第1個人到第n個人每人的接水時間T1,T2,…,Tn,每個資料
HFOI2017.07.10校內賽(普及組)題解
1:Maze 描述 Acm, a treasure-explorer, is exploring again. This time he is in a special maze, in wh
關於OIBH杯第三次模擬賽(普及組)Problem 4 : excel 電子表格 的福利
也許你用過Microsoft Excel之類的電子製表軟體,這類軟體最令人稱道的就是強大的公式計算功能。現在希望你也來實現一個具有最基本功能的電子製表軟體。表格共有m列(0 < m • 26),從左到右依次用A到Z的大寫英文字母表示;有n行(0 < n <100),從上到下依次用1到100的