Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int a[101][101],n,m,INF=1001,b[101][101];
- void citire(){
- cin>>n>>m;
- int x,y,z;
- for(int i=1;i<=m;i++)
- {
- cin>>x>>y>>z;
- a[x][y]=z;
- }
- for(int i=1;i<=n;i++)
- for(int j=1;j<=n;j++)
- {
- if(i==j)
- a[i][j]=0;
- if(i!=j&&a[i][j]==0)
- a[i][j]=INF;
- }
- }
- void roys()
- {
- for(int i=1;i<=n;i++)
- for(int j=1;j<=n;j++)
- {
- b[i][j]=a[i][j];
- }
- }
- int main()
- { int c=0;
- citire();
- roys();
- for(int i=1;i<=n;i++)
- { for(int j=1;j<=n;j++)
- cout<<b[i][j]<<" ";
- cout<<endl;
- }
- for(int i=1;i<=n;i++)
- for(int j=1;j<=n;j++)
- for(int k=1;k<=n;k++)
- if(b[j][k]>b[j][i]+b[i][k])
- b[j][k]=b[j][i]+b[i][k];
- for(int i=1;i<=n;i++)
- { for(int j=1;j<=n;j++)
- cout<<b[i][j]<<" ";
- cout<<endl;
- }
- for(int i=1;i<=n;i++)
- for(int j=1;j<=n;j++)
- {
- if(a[i][j]==b[i][j]&&a[i][j]!=INF&&i!=j)
- c++;
- }
- cout<<c;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement