c语言oj竞选投票,Just oj 2018 C语言程序设计竞赛(高级组)H: CBT?
H: CBT?
時間限制: 1 s ? ? ?內存限制: 128 MB ? ? ?提交 我的狀態
題目描述
對于二叉樹,如果這棵樹的節點排布是按行從上到下,每行從左到右挨個放置,中間不會有空閑的節點。則我們稱之為完全二叉樹。
注:這棵樹的根節點的值一定是1
輸入
輸入數字正整數n (1≤n≤201≤n≤20)
接下來n行,每行為兩個數字(a,b)和一個字符c(L 或者 R),如果字符c是L,則表示b是a的左子節點;如果字符c是R,則表示b是a的右子節點。 (1≤a,b≤30001≤a,b≤3000)
輸出
判斷這棵樹是否為完全二叉樹,如果是則輸出Yes,否則輸出No
樣例輸入
5
1 2 L
1 3 R
2 4 L
2 5 R
3 6 L
樣例輸出
Yes
分析:建立一個類型P(u,k),u為該點的值,k用于選擇該點的左右子結點;用map儲存u點子節點的值,用隊列實現從根節點開始往下再往右遍歷的過程;通過改變k的值實現同一結點從左兒子到右兒子遍歷的過程,左或右兒子不存在則退出循環,若通過遍歷的結點數量驗證是否為完全二叉樹;
#include
#include
#include
#include
#include
using namespace std;
typedef pairM;//用于選擇左節點和右結點
int x[3033];
bool vis[3033];//用于尋找根節點
mapp;//用于尋找子節點
queueq;//用于遍歷樹
int main()
{
int n,y;
char c;
scanf("%d",&n);
M tmp;
for(int i=0;i
scanf("%d%d",&x[i],&y);
cin>>c;
tmp.first=x[i],tmp.second=c;
p[tmp]=y;
vis[y]=1;
}
for(int i=1;i<=n;i++)
if(!vis[x[i]]){
q.push(x[i]);break;//插入根節點
}
int cnt=0;
while(!q.empty()){
tmp.first=q.front();
q.pop();
tmp.second='L';
if(p.find(tmp)!=p.end()){
q.push(p[tmp]);//插入tmp的左兒子
cnt++;
}else{
break;
}
tmp.second='R';
if(p.find(tmp)!=p.end()){
q.push(p[tmp]);//插入tmp的左兒子
cnt++;
}else{
break;
}
}
cnt==n?printf("Yes\n"):printf("No\n");
return 0;
}
Just oj 2018 C語言程序設計競賽(高級組)D: 四邊形面積
D: 四邊形面積 時間限制: 1 s ? ? ?內存限制: 128 MB ? ? ?提交 我的狀態 題目描述 有一個四邊形,現在需要求它的面積 輸入 輸入四行,每行兩個數整數xx, yy (1≤x,y ...
Just oj 2018 C語言程序設計競賽(高級組)F:Star(結構體排序+最小生成樹)
F: Star Time Limit:?1 s ?????Memory Limit:?128 MB Submit?My Status Problem Description 31世紀,人類世界的科技已 ...
2018年江西理工大學C語言程序設計競賽(高級組)	 	三角平方數
題目描述 三角數:形如圖a,圓點擺放成等邊三角形的數字,則為三角數. (圖a) 平方數:形如圖b,小方塊擺放成正方形的數字,則為平方數. (圖b) 那么如果一個數字既是三角形數又是平方數,則稱為三角平 ...
Just Oj 2017C語言程序設計競賽高級組A: 求近似值(矩陣快速冪)
A: 求近似值 時間限制:?1 s ?????內存限制:?128 MB 提交?我的狀態 題目描述 求?(5–√+6–√)2n??(5+6)2n?%9932017. 例如:n=1,(5–√+6–√)2( ...
Just Oj 2017C語言程序設計競賽高級組E: DATE ALIVE(二分匹配)
E: DATE ALIVE 時間限制:?1 s ?????內存限制:?128 MB 提交?我的狀態 題目描述 五河士道家里的精靈越來越多了,而每一個精靈都想和他有一個約會.然而五河士道卻只有一個,無奈 ...
Just Oj 2017C語言程序設計競賽高級組D: 字符串最大表示(next數組)
D: 字符串最大表示 時間限制:?1 s ?????內存限制:?128 MB 題目描述 有如下定義,abcnabcn表示字符串abc重復n次,例如abc2abc2表示abcabc. 給定一個字符串,求 ...
2018年江西理工大學C語言程序設計競賽高級組部分題解
B Interesting paths 考察范圍:組合數學 此題是機器人走方格的變種,n*m的網格,從(1,1)走到(n,m),首先可以明確,水平要走m-1格,豎直要走n-1格,則走到目的地的任意一條 ...
2014江西理工大學C語言程序設計競賽高級組題解
1001?Beautiful Palindrome Number 枚舉回文數字前半部分,然后判斷該數字是否滿足,復雜度為O(sqrt(n))! 1002?Recovery Sequence? 本題的核 ...
2017年江西理工大學C語言程序設計競賽(高級組)
問題 A: 求近似值 #include #include #include using namespac ...
隨機推薦
linux 的iptables防火墻
.a文件就是*.o文件的集合, 是object文件的歸檔文件, 所以, 用nm -A? ???.a看到的 symbolic符合名稱都是 相應的,? 包含的? .o文件.... linux 2.4內核中 ...
Ehcache(2.9.x) - API Developer Guide, Cache Exception Handlers
About Exception Handlers By default, most cache operations will propagate a runtime CacheException o ...
Spring+SpringMVC+MyBatis深入學習及搭建(十二)——SpringMVC入門程序
轉載請注明出處:http://www.cnblogs.com/Joanna-Yan/p/6999743.html 前面講到:Spring+SpringMVC+MyBatis深入學習及搭建(十一)--S ...
Windows下基于ADS+J-Link 的ARM開發環境搭建
在一般ARM編程教學和實驗環境里,一般采用 ADS加+并口轉Jtag板+H-Jtag的開發環境.但是這種方法最大缺點是需要機器上有一個并口.現在無論PC還是筆記本都很難有并口,因此采用USB接口調試器 ...
Hive 導入 parquet 格式數據
Hive 導入 parquet 數據步驟如下: 查看 parquet 文件的格式 構造建表語句 倒入數據 一.查看 parquet 內容和結構 下載地址 社區工具 GitHub 地址 命令 查看結構: ...
c/c++ 重載運算符 關系,下標,遞增減,成員訪問的重載
重載運算符 關系,下標,遞增減,成員訪問的重載 為了演示關系,下標,遞增減,成員訪問的重載,創建了下面2個類. 1,類StrBlob重載了關系,下標運算符 2,類StrBlobPtr重載了遞增,抵減, ...
和初學者交流學習java語言一些體會。
對初學者,自己學習java語言的一些體會: 1.工欲善其事,必先利其器.先把Java學習工具準備好,包括集成開發環境IDE,自己覺得MyEclipse比較適合,還有數據庫,Oracle或MySQL,S ...
接口工具之postman
在我們日常開發中,經常會對功能接口進行相應的測試.那么postman是一款不錯的測試工具,因為平常使用的比較多,因此在這里簡單記錄一下,經常使用到的一些地方 簡單的使用就不錯介紹了, 基本流程: 新建 ...
總結
以上是生活随笔為你收集整理的c语言oj竞选投票,Just oj 2018 C语言程序设计竞赛(高级组)H: CBT?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 又好又快,免费学习编程的9个地方
- 下一篇: catia, creo, SW打开stp