第九屆藍橋杯大賽個人賽決賽(軟體類本科B組)做題筆記 mit zwei Antworten
標題:換零鈔
x星球的鈔票的面額只有:100元,5元,2元,1元,共4種。
小明去x星旅遊,他手裡只有2張100元的x星幣,太不方便,恰好路過x星銀行就去換零錢。
小明有點強迫症,他堅持要求200元換出的零鈔中2元的張數剛好是1元的張數的10倍,
剩下的當然都是5元面額的。
銀行的工作人員有點為難,你能幫助算出:在滿足小明要求的前提下,最少要換給他多少張鈔票嗎?
(5元,2元,1元面額的必須都有,不能是0)
注意,需要提交的是一個整數,不要填寫任何多餘的內容。
Ans=74
Codes:
#include <iostream>
using namespace std;
/*
標題:換零鈔
x星球的鈔票的面額只有:100元,5元,2元,1元,共4種。
小明去x星旅遊,他手裡只有2張100元的x星幣,太不方便,恰好路過x星銀行就去換零錢。
小明有點強迫症,他堅持要求200元換出的零鈔中2元的張數剛好是1元的張數的10倍,
剩下的當然都是5元面額的。
銀行的工作人員有點為難,你能幫助算出:在滿足小明要求的前提下,最少要換給他多少張鈔票嗎?
(5元,2元,1元面額的必須都有,不能是0)
注意,需要提交的是一個整數,不要填寫任何多餘的內容。
*/
int main(){
int minN=1E6;
for(int i=1;21*i<=200;i++){//i: 1元 的張數
int five=200-21*i;
int thisN=0;
if(five%5==0){
thisN=11*i+five/5;
cout<<i<<"張 1元 "<<10*i<<"張2元 "<<five/5<<"張5元"<<endl;
minN=min(minN,thisN);
}
}
cout<<minN<<endl;
system("pause");
return 0;
}
標題:鐳射樣式
x星球的盛大節日為增加氣氛,用30臺機光器一字排開,向太空中打出光柱。
安裝除錯的時候才發現,不知什麼原因,相鄰的兩臺鐳射器不能同時開啟!
國王很想知道,在目前這種bug存在的情況下,一共能打出多少種鐳射效果?
顯然,如果只有3臺機器,一共可以成5種樣式,即:
全都關上(sorry, 此時無聲勝有聲,這也算一種)
開一臺,共3種
開兩臺,只1種
30臺就不好算了,國王只好請你幫忙了。
要求提交一個整數,表示30臺鐳射器能形成的樣式種數。
注意,只提交一個整數,不要填寫任何多餘的內容。
Ans=2178309
Codes:
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int arr[30];
long long ans=31;
void init(int num){
for(int i=0;i<30;i++)
arr[i]=0;
for(int i=0;i<num;i++)
arr[i]=1;
sort(arr,arr+30);
}
bool check(){
if( (arr[0]==1 && arr[1]==1) || (arr[30-1]==1 && arr[30-2]==1))
return false;
for(int i=1;i<30-1;i++){//相鄰相鄰的兩臺鐳射器不能同時開啟!
if(arr[i]==1 && (arr[i-1]==1 || arr[i+1]==1 ))
return false;
}
return true;
}
void PrintArr(){
for(int i=0;i<30;i++)
cout<<arr[i]<<" ";
cout<<endl;
}
void demo(int chose){
init(chose);
do{
if(check()){
ans++;
// PrintArr();
if(ans%100000==0)
cout<<ans<<endl;
}
}while(next_permutation(arr,arr+30));
}
// 0~ceil(1.0*n/2)全排列+check
int main(){
for(int i=2;i<=ceil(1.0*30/2);i++)
demo(i);
cout<<ans<<endl;
cout<<"hello world!"<<endl;
system("pause");
return 0;
}
相關文章
- 第九屆藍橋杯軟體類省賽 Java B組 題目及解析Java
- 2018年第九屆藍橋杯省賽試題及詳解(Java本科B組)Java
- 第九屆藍橋杯B組省賽———乘積最大
- 第十五屆藍橋杯軟體賽省賽C/C++B 組題解C++
- 2018年第九屆藍橋杯省賽試題及詳解(Java本科A組)Java
- 第14屆藍橋杯B組國賽
- 第十五屆藍橋杯大賽軟體賽省賽 C/C++ 大學 A 組C++
- 藍橋杯__省賽__第九屆__C/C++__大學A組C++
- 2024年第十五屆藍橋杯軟體類國賽 C/C++ B組 個人解法C++
- 2015年藍橋杯六屆省賽大學B組真題
- 第十一屆藍橋杯大賽第二次模擬(軟體類)真題(做題筆記)筆記
- 2017省賽藍橋杯B組
- 2018藍橋杯省賽B組
- 第六屆藍橋杯省賽CC++B組C++
- 第十四屆藍橋杯大賽軟體賽省賽Python 《三國遊戲》Python遊戲
- 第十四屆藍橋杯省賽C++ B組(個人經歷 + 題解)C++
- 第九屆藍橋杯省賽C++A組 倍數問題(dfs)C++
- 2018第九屆藍橋杯省賽C++B組【第四題:測試次數】C++
- 第十三屆藍橋杯省賽A組
- 第十三屆藍橋杯省賽C/C++ B組C++
- 2013年第四屆藍橋杯省賽試題及詳解(Java本科C組)Java
- 2014年第五屆藍橋杯省賽試題及詳解(Java本科C組)Java
- 2016年省賽第七屆藍橋杯B組C/C++第九題解 交換瓶子C++
- 第十屆藍橋杯C++國賽B組部分題解(假題解)C++
- 第十五屆藍橋杯C++B組省賽總結C++
- 第十屆藍橋杯省賽C++B組 等差數列C++
- 藍橋杯javaB組備賽Java
- 藍橋杯__省賽__第七屆__C/C++__大學A組C++
- 藍橋杯__省賽__第八屆__C/C++__大學A組C++
- 【藍橋杯考前突擊】第十屆藍橋杯省賽C/C++大學B組 試題 D 數的分解C++
- 試題B:小球反彈(第十五屆藍橋杯省賽B組c/c++組)C++
- 第十一屆藍橋杯省賽CC++組第二場比賽C++
- 2017第八屆藍橋杯C/C++ B組省賽第二題 秒解C++
- 藍橋杯第五屆省賽題目及題解
- 藍橋杯省賽真題2015年第六屆Java本科B組第01題——三角形面積Java
- 2013第四屆藍橋杯省賽C++A組【第一題:高斯日記】C++
- 2020藍橋杯省賽B組C++(第二場)真題C++
- 2020年7月藍橋杯初賽 C++B組(學習筆記3)C++筆記