用户:
codeBoy查看:109 回复:35 评论:109 创建时间:2022-06-29T15:51:04
C++比Python难谁会的我叫他爸爸,给我发截图。
小鹿UUyM#include<iostream>
#include<conio.h>
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main(){
system("color 0c");
char b,a;
int c=48,d=48,f=48,e,cishu=0,cuo=0,fen;
cout<<" 这是一个打字练习,可以锻炼打字(英文字符和字母练习)"<<endl<<" 打字简介:本练习一共有30道题,会根据你的错误程度进行打分!小提示:注意把中文模式切换英文(shift键切换)"<<endl;
cout<<" 准备好了吗?要开始了!";
system("pause");
Sleep(100);
system("cls");
while(1)
{
if(cishu==30)
{
cout<<" 恭喜你!你成功完成了练习!!"<<endl;
break;
}
system("color 0c");
srand(time(0));
e=rand()%1+3;
if(e==1)
{
srand(time(0));
c=rand()%65+90;
a=c;
}
else if(e==2)
{
srand(time(0));
d=rand()%97+122;
a=d;
}
else
{
srand(time(0));
d=rand()%48+57;
a=d;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" "<<a<<endl;
b=getch();
if(a!=b)
{
cout<<"错了哦!"<<endl;
cuo++;
}
else
cout<<"对了!"<<endl;
cishu++;
cout<<endl;
cout<<endl;
Sleep(100);
system("cls");
}
fen=30-cuo;
system("color 0a");
cout<<"你的分数是:"<<fen<<endl;
if(fen==30)
cout<<"厉害!满分!"<<endl;
else if(fen>25)
cout<<"加油!再努力下就满分了!"<<endl;
else if(fen>=20)
cout<<"加油吧!差点就不到二十了呢!"<<endl;
else
cout<<"不及格哦!请继续努力!"<<endl;
system("pause");
return 0;
}
//作者:小鹿UUyM点赞0
评论
我是白白#include<bits/stdc++.h>
using namespace std;
const int dx[]={-1,0,0,1},dy[]={0,-1,1,0};
int a[4][4],qdx,qdy;
set<int>s;
int upa(){
return a[3][3]*1+a[3][2]*10+a[3][1]*100+a[2][3]*1000+a[2][2]*10000+a[2][1]*100000+a[1][3]*1000000+a[1][2]*10000000+a[1][1]*100000000;
}
void bfs(){
queue<int>qx,qy,st;
qx.push(qdx);
qy.push(qdy);
st.push(0);
while(!qx.empty()){
int x=qx.front(),y=qy.front(),ste=st.front();
for(int i=0;i<4;i++){
int x2=x+dx[i],y2=y+dy[i];
if(x2>=1&&x2<=3&&y2>=1&&y2<=3){
swap(a[x2][y2],a[x][y]);
if(s.count(upa())==0)qx.push(x2),qy.push(y2),st.push(ste+1),s.insert(upa());
if(upa()==123804765){
cout<<ste+1;
exit(0);
}
swap(a[x][y],a[x2][y2]);
}
}
qx.pop(),qy.pop(),st.pop();
}
}
int main(){
for(int i=1;i<=3;i++){
for(int j=1;j<=3;j++){
char tmp;
cin>>tmp;
a[i][j]=tmp-'0';
if(tmp=='0')qdx=i,qdy=j;
}
}
s.insert(upa());
if(upa()==123804765){
cout<<0;
return 0;
}
bfs();
return 0;
}
点赞0
评论
我是白白#include<bits/stdc++.h>
using namespace std;
#define MAXN 200005
#define MAXT 25
struct EDGE{
int u,v,w;
bool operator<(const EDGE &a)const{
if(w!=a.w) return w<a.w;
if(u!=a.u) return u<a.u;
return v<a.v;
}
};
vector<EDGE> edg[MAXN],edgT[MAXN],bridgeEdg;
int node[MAXN];
int tDeep[MAXN];
int dfn[MAXN],low[MAXN],instack[MAXN],visit[MAXN];
int timeStamp=0,n,m,bNum=0;
int stk[MAXN],top=0;
int tChild[MAXN],root,tParent[MAXN][MAXT],tNum,leaf[MAXN];
int Find_Set(int x){
if(node[x]!=x)node[x]=Find_Set(node[x]);
return node[x];
}
void Merge_Set(int x,int y){
x=Find_Set(x);
y=Find_Set(y);
if(x==y)return;
if(x>y)swap(x,y);
node[y]=x;
}
void Tarjan(int u,int father){
int v;
dfn[u]=low[u]=++timeStamp;
instack[u]=true;stk[++top]=u;
for(unsigned i=0; i<edg[u].size();i++)
if(!dfn[v=edg[u][i].v]){
Tarjan(v,u);
low[u]=min(low[u],low[v]);
}
else if((v!=father)&&instack[v]) low[u]=min(low[u],dfn[v]);
if(dfn[u]==low[u]){
do Merge_Set(u,v=stk[top--]),instack[v]=false;
while(u!=v);
bNum++;
if(father) bridgeEdg.push_back((EDGE){u,father,0});
}
}
void DFS(int u,int deep){
tDeep[u]=++deep;
tChild[u]=edgT[u].size();
for( int i=1;i<MAXT;i++) tParent[u][i]=tParent[tParent[u][i-1]][i-1];
if(!edgT[u].size()) leaf[++tNum]=u;
else
for(unsigned i =0; i< edgT[u].size();i++){
tParent[edgT[u][i].v][0]=u;
DFS(edgT[u][i].v,deep);
}
}
int LCA(int x, int y){
if(tDeep[x]<tDeep[y]) swap(x,y);
for(int i=MAXT-1;i>=0;i--)
if(tDeep[tParent[x][i]]>=tDeep[y])
x=tParent[x][i];
if(x==y) return x;
for(int i=MAXT-1;i>=0;i--)
if(tParent[x][i]!=tParent[y][i]){
x=tParent[x][i];
y=tParent[y][i];
}
return tParent[x][0];
}
int CheckLeaf(int i, int root){
int s=0;
while(tParent[i][0]!=root)
{
if(Find_Set(i)!=Find_Set(tParent[i][0]))
s+=tChild[Find_Set(tParent[i][0])]-1;
i=tParent[i][0];
}
return s;
}
void MergeLeaf(int u, int lca){
int s=0;
while(u!=lca){
if(Find_Set(u)!=Find_Set(tParent[u][0]))
s+=tChild[Find_Set(tParent[u][0])]-1;
Merge_Set(u,tParent[u][0]);
u=tParent[u][0];
}
tChild[Find_Set(lca)]=s;
}
int main(){
int u,v;
unsigned x;
cin>>n>>m;
memset(node,0,sizeof(node));
for(int i=0;i<=n;i++)node[i]=i;
for(int i=0;i<m;i++){
cin>>u>>v;
edg[u].push_back((EDGE){u,v,i});
edg[v].push_back((EDGE){v,u,i});
}
root=1;
Tarjan(1,0);
for(unsigned i=0;i<bridgeEdg.size();i++){
u=Find_Set(bridgeEdg[i].u);
v=Find_Set(bridgeEdg[i].v);
edgT[v].push_back((EDGE){v,u,0});
}
tNum=0;
DFS(root,0);
bridgeEdg.clear();
sort(leaf+1,leaf+tNum+1);
int lNum=tNum; u=1;
while(lNum>1){
for(;u<=tNum;u++)if(!visit[u]) break;
for(v=u+1;v<=tNum;v++)
if(!visit[v]){
x=LCA(leaf[u],leaf[v]);
if((tChild[x]>2)||(lNum<4)||CheckLeaf(leaf[u],x)||CheckLeaf(leaf[v],x)){
MergeLeaf(leaf[u],x);
MergeLeaf(leaf[v],x);
visit[u]=true;
visit[v]=true;
lNum-=2;
bridgeEdg.push_back((EDGE){leaf[u],leaf[v],0});
break;
}
}
}
if(tChild[root]){
if(!lNum)bridgeEdg.push_back((EDGE){leaf[u],root,0});
else{
for(;u<=tNum;u++)if(!visit[u]) break;
for(x=0;x<edg[root].size();x++)if(edg[root][x].v==leaf[u])break;
if(x>=edg[root].size()) bridgeEdg.push_back((EDGE){leaf[u],root,0});
else if(edg[root].size()>1) bridgeEdg.push_back((EDGE){leaf[u],edg[root][(x+1)%edg[root].size()].v,0});
else{
for(x=0;x<edg[leaf[u]].size();x++)if(edg[leaf[u]][x].v!=root) break;
bridgeEdg.push_back((EDGE){root,edg[leaf[u]][x].v,0});
}
}
}
cout<<bridgeEdg.size()<<endl;
return 0;
}点赞0
评论
小鹿UUyM#include<iostream>
#include<conio.h>
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main(){
system("color 0c");
char b,a;
int c=48,d=48,f=48,e,cishu=0,cuo=0,fen;
cout<<" 这是一个打字练习,可以锻炼打字(英文字符和字母练习)"<<endl<<" 打字简介:本练习一共有30道题,会根据你的错误程度进行打分!小提示:注意把中文模式切换英文(shift键切换)"<<endl;
cout<<" 准备好了吗?要开始了!";
system("pause");
Sleep(100);
system("cls");
while(1)
{
if(cishu==30)
{
cout<<" 恭喜你!你成功完成了练习!!"<<endl;
break;
}
system("color 0c");
srand(time(0));
e=rand()%1+3;
if(e==1)
{
srand(time(0));
c=rand()%65+90;
a=c;
}
else if(e==2)
{
srand(time(0));
d=rand()%97+122;
a=d;
}
else
{
srand(time(0));
d=rand()%48+57;
a=d;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" "<<a<<endl;
b=getch();
if(a!=b)
{
cout<<"错了哦!"<<endl;
cuo++;
}
else
cout<<"对了!"<<endl;
cishu++;
cout<<endl;
cout<<endl;
Sleep(100);
system("cls");
}
fen=30-cuo;
system("color 0a");
cout<<"你的分数是:"<<fen<<endl;
if(fen==30)
cout<<"厉害!满分!"<<endl;
else if(fen>25)
cout<<"加油!再努力下就满分了!"<<endl;
else if(fen>=20)
cout<<"加油吧!差点就不到二十了呢!"<<endl;
else
cout<<"不及格哦!请继续努力!"<<endl;
system("pause");
return 0;
}
//作者:小鹿UUyM点赞0
评论
codeBoy#杰哥不要
print("杰哥我超勇的")
for x in range(3):
print("我要芭比q")
move back and forth(鼠标移动)
you were clicked("jump")点赞0
评论
小鹿UUyM#include<iostream>
#include<conio.h>
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main(){
system("color 0c"); //颜色
char b,a;
int c=48,d=48,f=48,e,cishu=0,cuo=0,fen;
cout<<" 这是一个打字练习,可以锻炼打字(英文字符和字母练习)"<<endl<<" 打字简介:本练习一共有30道题,会根据你的错误程度进行打分!小提示:注意把中文模式切换英文(shift键切换)"<<endl;
cout<<" 准备好了吗?要开始了!";
system("pause"); //暂停
Sleep(100); //等待100毫秒
system("cls"); //清屏
while(1) //循环
{
if(cishu==30) //判断
{
cout<<" 恭喜你!你成功完成了练习!!"<<endl;
break;
}
system("color 0c");
srand(time(0));
e=rand()%1+3; //随机数
if(e==1)
{
srand(time(0));
c=rand()%65+90;
a=c;
}
else if(e==2)
{
srand(time(0));
d=rand()%97+122;
a=d;
}
else
{
srand(time(0));
d=rand()%48+57;
a=d;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<" "<<a<<endl;
b=getch();
if(a!=b)
{
cout<<"错了哦!"<<endl;
cuo++;
}
else
cout<<"对了!"<<endl;
cishu++;
cout<<endl;
cout<<endl;
Sleep(100);
system("cls");
}
fen=30-cuo;
system("color 0a");
cout<<"你的分数是:"<<fen<<endl; //最后输出
if(fen==30)
cout<<"厉害!满分!"<<endl;
else if(fen>25)
cout<<"加油!再努力下就满分了!"<<endl;
else if(fen>=20)
cout<<"加油吧!差点就不到二十了呢!"<<endl;
else
cout<<"不及格哦!请继续努力!"<<endl;
system("pause");
return 0; //结束
}
//作者:小鹿UUyM点赞0
评论