Advertisement
Guest User

Untitled

a guest
Mar 31st, 2020
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.97 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. vector<int >node[2001];
  4. int vis[2001];
  5. int level[2001];
  6.  
  7. void bfs(int n){
  8.     queue<int>q;
  9.     q.push(n);
  10.     vis[n]=1;
  11.     level[n]=0;
  12.     while(!q.empty()){
  13.         int x=q.front();
  14.         q.pop();
  15.         for(int i=0;i<node[x].size();i++){
  16.             int u=node[x][i];
  17.             if(vis[u])continue;
  18.             vis[u]++;
  19.             level[u]=level[x]+1;
  20.             q.push(u);
  21.         }
  22.     }
  23. }
  24.  
  25.  
  26. int main()
  27. {
  28.     int n,x,y;
  29.     cin>>n>>x>>y;
  30.     map<int ,int>mp;
  31.     node[y].push_back(x);
  32.     node[x].push_back(y);
  33.     for(int i=1;i<n;i++){
  34.         node[i].push_back(i+1);
  35.         node[i+1].push_back(i);
  36.     }
  37.  
  38.     for(int i=1;i<n;i++){
  39.         bfs(i);
  40.         for(int j=i+1;j<=n;j++){
  41.             int p=level[i];
  42.             mp[p]++;
  43.         }
  44.         memset(vis,0,sizeof(vis));
  45.         memset(level,0,sizeof(level));
  46.     }
  47.  
  48.     for(int i=1;i<n;i++){
  49.         cout<<mp[i]<<endl;
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement