题目地址:点击打开链接
1073:
直接模拟就好。
代码:
#include
#include
#include
#include
#include
#include
const int maxn=100005;
using namespace std;
char a[maxn];
char ans[maxn];
int main()
{
int i;
while(cin>>a)
{
int len=strlen(a);
int flag=-1;
if(a[0]=='+')
flag=1;
if(flag==-1) cout<<"-";
int tt;
for(i=1;i0)
{
int k=0;
ans[k++]=a[1];
for(i=3;i0)
{
while(e--)
ans[k++]='0';
}
else if(i
链表相隔m就转置,因为地址是1~10^5直接用数组模拟就好。
//这就是PAT的题目,必须考虑bug!!
//给你一个链表还需要考虑有些没有链上去的。。。
#include
#include
#include
#include
#include
#include
const int maxn=100005;
using namespace std;
struct node
{
int next;
int val;
}nod[maxn],ans[maxn];
int res[maxn];
int ans1[maxn];
int main()
{
int cur,n,k;
int i,j;
while(cin>>cur>>n>>k)
{
for(i=0;i>x;
cin>>nod[x].val>>nod[x].next;
}
int t=1;
while(cur!=-1)
{
ans[t].next=cur; //这时候存放的是当前地址,见注释解释一
ans[t++].val=nod[cur].val;
cur=nod[cur].next;
}
n=t-1;
/*cout<<"****"<=i-k+2;j--)
printf("%05d %d %05d\n",ans[j].next,ans[j].val,ans[j-1].next);
if(i==n)
printf("%05d %d -1\n",ans[j].next,ans[j].val);
else
printf("%05d %d %05d\n",ans[j].next,ans[j].val,ans[i+1].next);
}
if(n%k)
{
i=n/k*k+1;
for(j=i;j
模拟判题机器判分数。
需要注意几个问题:
1.先按总分排序,如果总分相同则按AC题数排序,再相等则按ID升序。
2.编译不通过得0分,如果没提交或编译没通过一题不显示。
没能debug出最后一组数据,yy不出来,只有22分/25分。
代码:
#include
#include
#include
#include
#include
给你n个人,编号0~n-1,接下来是0是哪几个人的粉丝,1是哪几个人的粉丝。。。。然后问你从某个人出发,k层以内可以到达的人数,bfs即可!
代码:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int n,l;
int visi[1005];
int mp[1005][1005];
int res[1005];
int fa[1005];
void bfs(int x)
{
memset(visi,0,sizeof(visi));
memset(fa,0,sizeof(fa));
visi[x]=1;
queue mq;
mq.push(x);
while(!mq.empty())
{
int cur=mq.front();
mq.pop();
for(int i=1;i<=n;i++)
{
if(!visi[i]&&mp[cur][i])
{
fa[i]=fa[cur]+1;
if(fa[i]<=l)
{
visi[i]=1;
mq.push(i);
}
}
}
}
int cnt=-1;
for(int i=1;i<=n;i++)
cnt+=visi[i];
res[x]=cnt;
}
int main()
{
int i,j,k;
while(cin>>n>>l)
{
memset(mp,0,sizeof(mp));
for(i=1;i<=n;i++)
{
cin>>k;
for(int t1=1;t1<=k;t1++)
{
cin>>j;
mp[j][i]=1; //i是j的粉丝
}
}
for(i=1;i<=n;i++)
bfs(i);
int q;
cin>>q;
while(q--)
{
int tt;
cin>>tt;
cout<