Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.IO;
- namespace ps3_3
- {
- class Program
- {
- public class Krawedz
- {
- public int v;
- public int u;
- public int w;
- public Krawedz() { }
- public Krawedz(Krawedz kw) { v = kw.v; u = kw.u; w = kw.w; }
- }
- static Krawedz[] E;
- static Krawedz[] pom;
- static void scalanie(int pocz, int kon)
- {
- for (int i = pocz; i <= kon; i++)
- {
- pom[i] = new Krawedz(E[i]);
- }
- int p = pocz;
- int q = (pocz + kon) / 2 + 1;
- int r = pocz;
- while (p <= (pocz + kon) / 2 && q <= kon)
- {
- if (pom[p].w > pom[q].w)
- {
- E[r] = new Krawedz(pom[q]);
- r++;
- q++;
- }
- else
- {
- E[r] = new Krawedz(pom[p]);
- r++;
- p++;
- }
- }
- while (p <= (pocz + kon) / 2)
- {
- E[r] = new Krawedz(pom[p]);
- r++;
- p++;
- }
- }
- static void sortowanie(int pocz, int kon)
- {
- if (pocz < kon)
- {
- sortowanie(pocz, (pocz + kon) / 2);
- sortowanie((pocz + kon) / 2 + 1, kon);
- scalanie(pocz, kon);
- }
- }
- static void Kruskal(int n)
- {
- int[] tab = new int[n];
- for (int i = 0; i < n; i++)
- tab[i] = i + 1;
- int p, q;
- int j = 0;
- while(j < n-1)
- }
- static void Main(string[] args)
- {
- StreamReader wejscie = new StreamReader("In0303.txt");
- string linia = wejscie.ReadLine();
- int n = int.Parse(linia.Split(null)[0]);
- int m = int.Parse(linia.Split(null)[1]);
- E = new Krawedz[m];
- pom = new Krawedz[m];
- int ind = 0;
- for (int i = 0; i < n && ind < m; i++)
- {
- string[] linia_s = wejscie.ReadLine().Split(null);
- for (int j = 0; j < linia_s.Length; j += 2)
- {
- int a = i + 1;
- int b = int.Parse(linia_s[j]);
- int w = int.Parse(linia_s[j + 1]);
- bool jest = false;
- for (int k = 0; k < ind; k++)
- {
- if (E[k].v == b && E[k].u == a)
- jest = true;
- }
- if (!jest)
- E[ind++] = new Krawedz() { v = a, u = b, w = w };
- }
- }
- wejscie.Close();
- foreach (Krawedz kr in E)
- Console.WriteLine("{0} {1} ({2})", kr.v, kr.u, kr.w);
- sortowanie(0, 16);
- Console.WriteLine("//////////////");
- foreach (Krawedz kr in E)
- Console.WriteLine("{0} {1} ({2})", kr.v, kr.u, kr.w);
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement