題目:
你作為一名出道的歌手終於要出自己的第乙份**了,你計畫收錄 n 首歌而且每首歌的長度都是 s 秒,每首歌必須完整地收錄於一張 cd 當中。每張 cd 的容量長度都是 l 秒,而且你至少得保證同一張 cd 內相鄰兩首歌中間至少要隔 1 秒。為了辟邪,你決定任意一張 cd 內的歌數不能被 13 這個數字整除,那麼請問你出這張**至少需要多少張 cd ?
輸入描述:
每組測試用例僅包含一組資料,每組資料第一行為三個正整數 n, s, l。 保證 n ≤ 100 , s ≤ l ≤ 10000
輸出描述:
輸出乙個整數代表你至少需要的 cd 數量。
輸入例子:
7 2 6
輸出例子:
4思路:
先求出乙個**最大的數目t,有t*s+t-1<=l,所以t最大為floor((l+1)/(s+1)),如果t%13==0,那麼t--,然後看餘數是不是也會被13整除,如果能被13整除,分為兩種情況:
1. n%t==t-1時不能互相勻,例如n=27,t=14,此時ans++ 。
2. n%t!=t-1,別的可以勻到餘陣列,例如n=28,t=15, 此時可以把第乙個15勻乙個到13那個,所以不需要ans再加。
#includeusing namespace std;int main()
if (t % 13 == 0) //t是13的倍數,減1
t --;
int ans = (n + t - 1) / t;// 向上取整的方法
//餘數x是13的整數倍,x=t-1,必須才分成2個**.其他可以由別的**勻過來,比如n=28,t=15,這個時候可以分成14,14兩個**
if ((n % t != 0) && ((n % t) % 13 == 0) && (n % t == t -1))
cout<< ans<
2017 08 22 今日頭條筆試題
有乙個值得分享的地方,是x排序之後對應y的問題 我用了乙個很大的陣列,以x為索引,y為陣列值,不需要用到map。其實也是因為我懶不想去學map操作了,下次試試用map。include include include using namespace std int main cin n x.clear...
今日頭條筆試題(一)
一列火車有n個車廂標記為1,2,3,4,5,6 n 現在因為某些原因,需要調整車廂的相對順序 例如需要將車廂順序調整為2,3,1,4,5,6 n 由於車廂龐大,且車廂只能停留在鐵軌上,所以不能隨心所欲的調整相對順序 現在只能利用兩條並行的鐵軌對車廂的順序進行調整 例如原序列為1,2的車廂 車廂1進入...
今日頭條筆試
問題描述 給定乙個段落,由 n 個句子組成。第 i 個句子的長度為 l i 包含的單詞個數為 w i 句子不包含任何除字母和空格 外的符號。每個句子內部,含有若干個單詞,由空格 分隔。句子不會包含連續的空格。隨後給定 m 個查詢,每個查詢包含乙個句子,需要在段落中尋找相同單詞數量最多的句子。重複的單...