Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define dim 100
- using namespace std;
- ifstream f("permutari.in");
- ofstream g("permutari.out");
- int sol[dim],n,nr=0;
- int solutie(int k)
- {
- return(k-1==n);
- }
- void init(int k)
- {
- sol[k]=0;
- }
- void tipar()
- {
- for(int i=1;i<=n;i++){
- g<<sol[i]<<" ";
- }
- g<<endl;
- }
- int valid(int k)
- {
- for(int i=1;i<=k-1;i++){
- if(sol[i]==sol[k])
- return 0;
- }
- return 1;
- }
- int succesor(int k)
- {
- if(sol[k]<n){
- sol[k]++;
- return 1;
- }
- return 0;
- }
- void citire()
- {
- f>>n;
- }
- void backtr(int k)
- {
- if (solutie(k))
- tipar();
- else{
- init(k);
- while(succesor(k)){
- if(valid(k)){
- backtr(k+1);
- }
- }
- }
- }
- int main()
- {
- citire(); backtr(1);
- return 0;
- }
Add Comment
Please, Sign In to add comment