A hydra consists of several heads and several necks, where each neck joins two heads.  When a hydra's head $A$ is hit by a sword, all the necks from head $A$ disappear, but new necks grow up to connect head $A$ to all the heads which weren't connected to $A$.  Heracle defeats a hydra by cutting it into two parts which are no joined.  Find the minimum $N$ for which Heracle can defeat any hydra with $100$ necks by no more than $N$ hits.
1. **Restate the problem in graph theory terms:**
   - Each head of the hydra is a vertex.
   - Each neck of the hydra is an edge connecting two vertices.
   - When a vertex \( v \) is hit, all edges incident to \( v \) are removed, and new edges are added to connect \( v \) to all vertices it was not previously connected to.
   - The goal is to disconnect the graph by making it into two disjoint subgraphs.

2. **Initial conditions:**
   - The graph \( G \) has \( |E(G)| = 100 \) edges.
   - We need to find the minimum number of hits \( N \) required to disconnect \( G \).

3. **Consider the complete bipartite graph \( K_{10, 10} \):**
   - \( K_{10, 10} \) is a bipartite graph with two sets of 10 vertices each, where every vertex in one set is connected to every vertex in the other set.
   - This graph has \( 10 \times 10 = 100 \) edges.

4. **Effect of hitting a vertex in \( K_{10, 10} \):**
   - Hitting a vertex in \( K_{10, 10} \) changes the graph structure.
   - If we hit a vertex in one set, it will be connected to all vertices in the other set that it was not previously connected to.
   - This operation effectively shifts the balance between the two sets, either increasing or decreasing the number of vertices in each set.

5. **Strategy to disconnect \( K_{10, 10} \):**
   - To disconnect \( K_{10, 10} \), we need to reduce it to a state where one set has only one vertex and the other set has 19 vertices, i.e., \( K_{1, 19} \) or \( K_{19, 1} \).
   - Each hit reduces the number of vertices in one set by 1 and increases the number of vertices in the other set by 1.
   - Therefore, it takes 10 hits to go from \( K_{10, 10} \) to \( K_{1, 19} \) or \( K_{19, 1} \).

6. **General case for any graph with 100 edges:**
   - If any vertex has a degree less than 10, it can be disconnected in fewer than 10 moves.
   - If every vertex has a degree of at least 10, the graph has at most 20 vertices (since \( 2|E| = \sum d(v) \ge 10|V| \) implies \( |V| \le 20 \)).
   - If a vertex \( v \) has a degree \( d(v) \ge 10 \), hitting all vertices not adjacent to \( v \) and then hitting \( v \) will disconnect \( v \) from the graph in at most 10 moves.

7. **Conclusion:**
   - The minimum number of hits \( N \) required to disconnect any hydra with 100 necks is 10.

The final answer is \( \boxed{10} \).