時間限制
300 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard
作者 陳越
給定乙個帶整數鍵值的單鏈表l,本題要求你編寫程式,刪除那些鍵值的絕對值有重複的結點。即對任意鍵值k,只有鍵值或其絕對值等於k的第乙個結點可以被保留。同時,所有被刪除的結點必須被儲存在另外乙個鍊錶中。例如:另l為21→-15→-15→-7→15,則你必須輸出去重後的鍊錶21→-15→-7、以及被刪除的鍊錶-15→15。
輸入格式:
輸入第一行包含鍊錶第乙個結點的位址、以及結點個數n(<= 105 的正整數)。結點位址是乙個非負的5位整數,null指標用-1表示。
隨後n行,每行按下列格式給出乙個結點的資訊:
address key next
其中address是結點的位址,key是絕對值不超過104的整數,next是下乙個結點的位址。
輸出格式:
首先輸出去重後的鍊錶,然後輸出被刪除結點組成的鍊錶。每個結點佔一行,按輸入的格式輸出。
輸入樣例:
00100 5輸出樣例:99999 -7 87654
23854 -15 00000
87654 15 -1
00000 -15 99999
00100 21 23854
00100 21 23854這題呢,主要是怎麼建立結構體,應該有好多題可以看出,可以直接把位址作為陣列裡的元素,,,23854 -15 99999
99999 -7 -1
00000 -15 87654
87654 15 -1
#include#include#include#include#include#includeusing namespace std;
const int maxn=100005;
struct node
aa[maxn];
int ans[maxn],res[maxn],vis[maxn];
int main()
;bool cmp(p a,p b)
int main()
else
}printf("%.2lf\n",sum);
} return 0;
時間限制
400 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard
作者
陳越
給定兩個整數集合,它們的相似度定義為:nc/nt*100%。其中nc是兩個集合都有的不相等整數的個數,nt是兩個集合一共有的不相等整數的個數。你的任務就是計算任意一對給定集合的相似度。
輸入格式:
輸入第一行給出乙個正整數n(<=50),是集合的個數。隨後n行,每行對應乙個集合。每個集合首先給出乙個正整數m(<=104),是集合中元素的個數;然後跟m個[0, 109]區間內的整數。
之後一行給出乙個正整數k(<=2000),隨後k行,每行對應一對需要計算相似度的集合的編號(集合從1到n編號)。數字間以空格分隔。
輸出格式:
對每一對需要計算的集合,在一行中輸出它們的相似度,為保留小數點後2位的百分比數字。
輸入樣例:
3輸出樣例:3 99 87 101
4 87 101 5 87
7 99 101 18 5 135 18 99
21 2
1 3
50.00%這一題最適合用集合容器set,用法:sets[55]; s[i].insert(x); set::iterator aa; s[i].begin(); s[i].end(); s[i].size(); s[i].find(*aa);33.33%
#include#include#include#include#include#include#includeusing namespace std;
int main()
double mm=sam*1.0/(s[y1].size()+s[y2].size()-sam);
printf("%.2lf%%\n",mm*100);
} return 0;
}
時間限制
150 ms
記憶體限制
65536 kb
**長度限制
8000 b
判題程式
standard
作者
陳越
布置宴席最微妙的事情,就是給前來參宴的各位賓客安排座位。無論如何,總不能把兩個死對頭排到同一張宴會桌旁!這個艱鉅任務現在就交給你,對任何一對客人,請編寫程式告訴主人他們是否能被安排同席。
輸入格式:
輸入第一行給出3個正整數:n(<= 100),即前來參宴的賓客總人數,則這些人從1到n編號;m為已知兩兩賓客之間的關係數;k為查詢的條數。隨後m行,每行給出一對賓客之間的關係,格式為:「賓客1 賓客2 關係」,其中「關係」為1表示是朋友,-1表示是死對頭。注意兩個人不可能既是朋友又是敵人。最後k行,每行給出一對需要查詢的賓客編號。
這裡假設朋友的朋友也是朋友。但敵人的敵人並不一定就是朋友,朋友的敵人也不一定是敵人。只有單純直接的敵對關係才是絕對不能同席的。
輸出格式:
對每個查詢輸出一行結果:如果兩位賓客之間是朋友,且沒有敵對關係,則輸出「no problem」;如果他們之間並不是朋友,但也不敵對,則輸出「ok」;如果他們之間有敵對,然而也有共同的朋友,則輸出「ok but...」;如果他們之間只有敵對關係,則輸出「no way」。
輸入樣例:
7 8 4輸出樣例:5 6 1
2 7 -1
1 3 1
3 4 1
6 7 -1
1 2 1
1 4 1
2 3 -1
3 45 7
2 37 2
no problemokok but...
no way
並查集。。。
#include#include#include#include#include#include#includeusing namespace std;
int fa[105];
int mm[105][105];
int find(int x)
int main()
;char s[5005][10];
mm ss[10005];
bool cmp(mm a,mm b)
int main()
} if(ff==0)
printf("bing mei you\n");
return 0;
}
數字dp從lv1到lv2
考慮到在記憶化搜尋過程中,大部分數都是zero 0,只有少數數是zero 1,所以我們只對zero 0的情況做記憶化處理 int dp 12 10 2 dp pos pre lim int dfs int pos,int pre,bool lim,bool zero int res 0 int r ...
團隊天梯賽賽後總結
準備了將近乙個月的天梯賽,今天終於比賽完了。簡單的做個總結。週六早上,九點二十我們在學校東門集合,上車。懷著激動的心情去鄭州輕工業大學參加比賽,坐車的路途中很愉快,到了地方,進圖書館報告廳拍照留念。拍完照後,發飯票吃飯,吃完飯去休息廳休息。一切按部就班。到了中午十二點四十,開始進考場,看著周圍不認識...
天梯賽練習2
7 6 航空公司vip客戶查詢 25 分 不少航空公司都會提供優惠的會員服務,當某顧客飛行里程累積達到一定數量後,可以使用里程積分直接兌換獎勵機票或獎勵公升艙等服務。現給定某航空公司全體會員的飛行記錄,要求實現根據身份證號碼快速查詢會員里程積分的功能。輸入首先給出兩個正整數n 10 5 和k 500...