<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-246723489367006212</id><updated>2024-10-03T06:24:12.704-07:00</updated><category term="Anagram of a string"/><category term="subset construction algorithm"/><category term="N queens"/><category term="Sudoku"/><category term="acyclic graph"/><category term="algorithm to find determinant"/><category term="all graphs are not trees"/><category term="bit vector"/><category term="check whether a graph is a tree"/><category term="cycle detection algorithm in a graph"/><category term="determinant of a matrix"/><category term="direct nth fibonacci number"/><category term="hashsearch in C"/><category term="implementation pf  hashsearch"/><category term="permutation of a string"/><category term="subset of set of numbers"/><category term="sudoku solver"/><title type='text'>Coding Questions and Answers</title><subtitle type='html'>Any questions related to programming and algorithms are posted and its answer will be published in the forthcoming days..&#xa;Anyone can post their answers or ask any doubt...&#xa;This site will be very useful to those attending technical interviews and those appearing for GATE and other examinations</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-234744113093334658</id><published>2013-01-15T00:13:00.001-08:00</published><updated>2013-01-15T00:14:30.418-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="N queens"/><category scheme="http://www.blogger.com/atom/ns#" term="Sudoku"/><category scheme="http://www.blogger.com/atom/ns#" term="sudoku solver"/><title type='text'></title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;&lt;u&gt;Sudoku Generator program.....&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int place(int X[][9],int row,int num)&lt;br /&gt;
//returns 1 if &quot;num&quot; can be placed in position &quot;row&quot;,&quot;X[row,num]&quot;. Else return 0&lt;br /&gt;
//X[row,num] gives the column number of &quot;num&quot; in &quot;row&quot;&lt;br /&gt;
{&lt;br /&gt;
int i;&lt;br /&gt;
if(num&amp;lt;1||num&amp;gt;9||row&amp;lt;0||row&amp;gt;8)return 0;&lt;br /&gt;
num=num-1; &amp;nbsp; //num is used as column index of solution array X.&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;row;i++) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check positions of same number upto row-1&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if( X[i][num]==X[row][num] || (i/3==row/3)&amp;amp;&amp;amp;(X[i][num]/3==X[row][num]/3) )&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;num;i++) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if some other placed in same position&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(X[row][i]==X[row][num])&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
return 1;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void print_sudoku(int X[][9])&lt;br /&gt;
{&lt;br /&gt;
int i,j;&lt;br /&gt;
int temp[9][9];&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;temp[i][X[i][j]]=j+1;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;printf(&quot;%d &amp;nbsp;&quot;,temp[i][j]);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;printf(&quot;\n&quot;);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void sudoku(int X[][9])&lt;br /&gt;
{&lt;br /&gt;
int row,number;&lt;br /&gt;
long int n=0;&lt;br /&gt;
row=0;&lt;br /&gt;
number=0; &amp;nbsp; //numbers 0 to 9-1 since it is used as column index of solution array&lt;br /&gt;
&lt;br /&gt;
X[0][0]=-1;&lt;br /&gt;
&lt;br /&gt;
while(number&amp;gt;=0)&lt;br /&gt;
{&lt;br /&gt;
X[row][number]=X[row][number]+1;&lt;br /&gt;
&lt;br /&gt;
while(X[row][number]&amp;lt;9 &amp;amp;&amp;amp; place(X,row,number+1)==0)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;X[row][number]=X[row][number]+1;&lt;br /&gt;
&lt;br /&gt;
if(X[row][number]&amp;lt;9)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(row==8)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(number==8){n++; printf(&quot;Sudoku no.%ld\n&quot;,n);print_sudoku(X); getchar();}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;else { row=0; number++; X[row][number]=-1;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;else&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;row++;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;X[row][number]=-1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
else if(row==0){number--; row=8;}&lt;br /&gt;
else row--;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
int X[9][9];&lt;br /&gt;
sudoku(X);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Sudoku Solver program......&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;
&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
int place(int X[][9],int row,int num,int table[][9])&lt;br /&gt;
//returns 1 if &quot;num&quot; can be placed in position &quot;row&quot;,&quot;X[row,num]&quot;. Else return 0&lt;br /&gt;
//X[row,num] gives the column number of &quot;num&quot; in &quot;row&quot;&lt;br /&gt;
{&lt;br /&gt;
int i;&lt;br /&gt;
if(num&amp;lt;1||num&amp;gt;9||row&amp;lt;0||row&amp;gt;8)return 0;&lt;br /&gt;
num=num-1; &amp;nbsp; //num is used as column index of solution array X.&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9 &amp;amp;&amp;amp; i!=num;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(table[row][i]==X[row][num])return 0;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;row;i++) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check positions of same number upto row-1&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if( X[i][num]==X[row][num] || (i/3==row/3)&amp;amp;&amp;amp;(X[i][num]/3==X[row][num]/3) )&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
for(i=row+1;i&amp;lt;9;i++)&lt;br /&gt;
if( table[i][num]!=-1 &amp;amp;&amp;amp;(table[i][num]==X[row][num] || (i/3==row/3)&amp;amp;&amp;amp;(table[i][num]/3==X[row][num]/3)))&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
for(i=0;i&amp;lt;num;i++) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// check if some other placed in same position&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(X[row][i]==X[row][num])&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
for(i=num+1;i&amp;lt;9;i++) &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(table[row][i]!=-1&amp;amp;&amp;amp;table[row][i]==X[row][num])&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;return 0;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return 1;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void read_table(int problem[][9],int table[][9])&lt;br /&gt;
{&lt;br /&gt;
int i,j;&lt;br /&gt;
printf(&quot;Enter the sudoku\nput 0 for blanks\n&quot;);&lt;br /&gt;
&lt;br /&gt;
//initialise solution array&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;table[i][j]=-1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;scanf(&quot;%d&quot;,&amp;amp;problem[i][j]);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(problem[i][j]!=0)table[i][problem[i][j]-1]=j;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void print_sudoku(int X[][9])&lt;br /&gt;
{&lt;br /&gt;
int i,j;&lt;br /&gt;
int temp[9][9];&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;temp[i][X[i][j]]=j+1;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;9;i++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;for(j=0;j&amp;lt;9;j++)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;printf(&quot;%d &amp;nbsp;&quot;,temp[i][j]);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;printf(&quot;\n&quot;);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void sudoku(int X[][9],int table[][9],int problem[][9])&lt;br /&gt;
{&lt;br /&gt;
int row,number;&lt;br /&gt;
long int n=0;&lt;br /&gt;
row=0;&lt;br /&gt;
number=0; &amp;nbsp; //numbers 0 to 9-1 since it is used as column index of solution array&lt;br /&gt;
&lt;br /&gt;
X[0][0]=-1;&lt;br /&gt;
&lt;br /&gt;
while(number&amp;gt;=0)&lt;br /&gt;
{&lt;br /&gt;
if(table[row][number]!=-1)X[row][number]=table[row][number];&lt;br /&gt;
else&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;X[row][number]=X[row][number]+1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;while(X[row][number]&amp;lt;9 &amp;amp;&amp;amp; place(X,row,number+1,table)==0)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;X[row][number]=X[row][number]+1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
if(X[row][number]&amp;lt;9)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(row==8)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(number==8){n++; printf(&quot;Sudoku no.%ld\n&quot;,n);print_sudoku(X); }&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;else { row=0; number++; X[row][number]=-1;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;else&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;row++;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;X[row][number]=-1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
else if(row==0)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; number--;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; row=8;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; while(table[row][number]!=-1)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(row==0){number--; row=8;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;row--;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; }&lt;br /&gt;
else&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;row--;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;while(table[row][number]!=-1)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;if(row==0){number--; row=8;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;row--;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
int solution[9][9];&lt;br /&gt;
int problem[9][9],table[9][9];&lt;br /&gt;
read_table(problem,table);&lt;br /&gt;
sudoku(solution,table,problem);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/234744113093334658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2013/01/sudoku-generator-program.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/234744113093334658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/234744113093334658'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2013/01/sudoku-generator-program.html' title=''/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-483800502553661369</id><published>2012-04-06T09:21:00.001-07:00</published><updated>2012-04-06T09:21:39.583-07:00</updated><title type='text'>Approach #1 for generate the sequence</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&amp;nbsp;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;math.h&amp;gt; &lt;br /&gt;
main()&lt;br /&gt;{&lt;br /&gt;int n;&lt;br /&gt;long long int num,i,x,j;&lt;br /&gt;long int cnt=0;&lt;br /&gt;printf(&quot;\n enter the number of bits :&quot;);&lt;br /&gt;scanf(&quot;%d&quot;,&amp;amp;n);&lt;br /&gt;num=pow(2,n);&lt;br /&gt;printf(&quot;\n %lld&quot;,num);&lt;br /&gt;for (i=0;i&amp;lt;num;i++)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0;j&amp;lt;num;j++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; x=j;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cnt=0;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (x)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (x&amp;amp;1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; cnt++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; x=x&amp;gt;&amp;gt;1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (cnt==i)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;\n %lld : %ld&quot;,j,cnt);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;return 1;&lt;br /&gt;}&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/483800502553661369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/04/approach-1-for-generate-sequence.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/483800502553661369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/483800502553661369'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/04/approach-1-for-generate-sequence.html' title='Approach #1 for generate the sequence'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-5840982870195129552</id><published>2012-04-01T07:32:00.003-07:00</published><updated>2012-04-01T07:32:43.516-07:00</updated><title type='text'>Generate this Sequence.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Your objective is to print all unsigned integers less than N, where N is the largest unsigned integer that can be represented by the number of bits specified by the user. The order in which the numbers should appear is decided by the following rules.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;0 appear first, since its binary representation have zero ones.&lt;/li&gt;
&lt;li&gt;1,2,4,8,.... appear next in the increasing order. Note that their binary representation have exactly one one.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;3,5,6,9,.... appear next in the increasing order.&amp;nbsp;Note that their binary representation have exactly two one.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;And so on.&lt;/li&gt;
&lt;/ol&gt;
One obvious&amp;nbsp;approach&amp;nbsp;is first store all the possible numbers in an array and then sort them based on the number of ones in their binary representation. But this is not what we need since we may need around 16GB of memory to store the numbers if inputs as small as 32. Another approach is to scan this 2^32 numbers 32 times, which may not be a big deal for our processors but still this in not the efficient way of doing it. we can either use some arithmetic relation between numbers of this sequence to find next number if any number in the sequence is given, or we can use&amp;nbsp;bit-wise&amp;nbsp;operators to develop an algorithm to find the next number for any given number.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/5840982870195129552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/04/generate-this-sequence.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5840982870195129552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5840982870195129552'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/04/generate-this-sequence.html' title='Generate this Sequence.'/><author><name>Tommy</name><uri>http://www.blogger.com/profile/14957212575321422118</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-5120766168850492520</id><published>2012-04-01T05:04:00.000-07:00</published><updated>2012-04-01T05:04:00.858-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="hashsearch in C"/><category scheme="http://www.blogger.com/atom/ns#" term="implementation pf  hashsearch"/><title type='text'>Answer to Implement hash search in C</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Here we use shift- folding as the hashing function and chaining for overflow handling.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include &amp;lt;string.h&amp;gt;&lt;br /&gt;#include &amp;lt;malloc.h&amp;gt;&lt;br /&gt;&lt;br /&gt;#define MAXLEN 80&lt;br /&gt;#define HASHSIZE 23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // some prime val.&lt;br /&gt;#define SHIFTBY 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // each group size in hashing.&lt;br /&gt;&lt;br /&gt;typedef struct node node;&lt;br /&gt;typedef char *type;&lt;br /&gt;&lt;br /&gt;struct node {&lt;br /&gt;&amp;nbsp;&amp;nbsp; int val;&lt;br /&gt;&amp;nbsp;&amp;nbsp; char *key;&lt;br /&gt;&amp;nbsp;&amp;nbsp; node *next;&lt;br /&gt;};&lt;br /&gt;node *h[HASHSIZE];&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;int hGetIndex(char *key) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * returns index into hashtable applying hash function.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * uses shift-folding followed by mod function for hashing.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; int i, n, finaln=0;&lt;br /&gt;&amp;nbsp;&amp;nbsp; char *keyptr;&lt;br /&gt;&amp;nbsp;&amp;nbsp; for(keyptr=key; *keyptr; finaln+=n)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(i=0, n=0; i&amp;lt;SHIFTBY &amp;amp;&amp;amp; *keyptr; ++i, ++keyptr)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; n = n*10 + *keyptr;&lt;br /&gt;&amp;nbsp;&amp;nbsp; finaln %= HASHSIZE;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; return finaln;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void hInsert( char *key, int val) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * insert s in hashtable h.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * use shift-folding followed by mod function for hashing.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * does NOT check for duplicate insertion.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; node *ptr = (node *)malloc(sizeof(node));&lt;br /&gt;&amp;nbsp;&amp;nbsp; int index = hGetIndex(key);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ptr-&amp;gt;key = strdup(key);&lt;br /&gt;&amp;nbsp;&amp;nbsp; ptr-&amp;gt;val = val;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ptr-&amp;gt;next = h[index];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; h[index] = ptr;&lt;br /&gt;&amp;nbsp;&amp;nbsp; printf(&quot;h[%d] = %s.\n&quot;, index, key);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int hGetVal( char *key) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * returns val corresponding to key if present in h else −1.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; node *ptr;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ptr=h[hGetIndex(key)];&lt;br /&gt;&amp;nbsp;&amp;nbsp; while (1)&lt;br /&gt;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp; if (ptr==NULL || strcmp(ptr-&amp;gt;key, key)==0)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ptr=ptr-&amp;gt;next;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; if(ptr)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ptr-&amp;gt;val;&lt;br /&gt;&amp;nbsp;&amp;nbsp; return -1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void printHash() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * print the hashtable rowwise.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; int i;&lt;br /&gt;&amp;nbsp;&amp;nbsp; node *ptr;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; for(i=0; i&amp;lt;HASHSIZE; ++i) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;%d: &quot;, i);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(ptr=h[i]; ptr; ptr=ptr-&amp;gt;next)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;%s=%d &quot;, ptr-&amp;gt;key, ptr-&amp;gt;val);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;\n&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int main() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char s[MAXLEN];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;HASHSIZE;i++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; h[i]=NULL;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; i=0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;Enter the string to be hashed: &quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gets(s);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(*s) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hInsert( s, i++);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;Enter the string to be hashed(enter to end): &quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gets(s);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printHash();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;Enter the string to be searched: &quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gets(s);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(*s) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; i=hGetVal(s);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (i!=-1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;%s was inserted at number %d.\n&quot;, s,i);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;%s was not inserted in the hashtable&quot;,s);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;\nEnter the string to be searched(enter to end): &quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gets(s);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/5120766168850492520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/04/answer-to-implement-hash-search-in-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5120766168850492520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5120766168850492520'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/04/answer-to-implement-hash-search-in-c.html' title='Answer to Implement hash search in C'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-6903684533749622940</id><published>2012-03-31T05:01:00.003-07:00</published><updated>2012-03-31T05:01:24.311-07:00</updated><title type='text'>Implement a hash search in C</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Write a program that takes strings as inputs and stores them in a hash table.&lt;br /&gt;
&lt;br /&gt;
Then it should then ask the user for strings to be searched in the hash table.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/6903684533749622940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/03/implement-hash-search-in-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6903684533749622940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6903684533749622940'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/03/implement-hash-search-in-c.html' title='Implement a hash search in C'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-8672085155402917161</id><published>2012-03-31T04:59:00.000-07:00</published><updated>2012-03-31T04:59:36.756-07:00</updated><title type='text'>Answer to nth fibonacci number</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
We have the recursion formula for fibonacci series as&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f(n)=f(n-1)+f(n-2)&lt;br /&gt;
&lt;br /&gt;
We can derive a formula for the function as &lt;br /&gt;
&amp;nbsp;f(n) - f(n-1) - f(n-2) = 0&lt;br /&gt;
which is transformed into a recurrence relation problem as..&lt;br /&gt;
x^2 - x - 1=0&lt;br /&gt;
The solution is&amp;nbsp; x= (1 +  &lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5)/2 and x=(1- &lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5)/2.&lt;br /&gt;
therefore the homogenius solution is&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;1&quot;&gt;&lt;tbody&gt;
&lt;tr align=&quot;center&quot;&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;(&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/openbkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td&gt;1 + √5&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;)&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/closebkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;sup&gt;n&lt;/sup&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;+A2 &lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;(&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/openbkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td&gt;1 – √5&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;)&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/closebkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;sup&gt;n&lt;/sup&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;f(n) = &lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;td&gt;A1&lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr align=&quot;center&quot;&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&amp;nbsp;Since the initial condition is&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f(0)=0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f(1)=1&lt;br /&gt;
Therefore A1 + A2 =0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A1*((1 +  &lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5)/2) + A2*((1 -  &lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5)/2) = 1&lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;1&quot;&gt;&lt;tbody&gt;
&lt;tr align=&quot;center&quot;&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
solving the above two equations ,&lt;br /&gt;
A1=(1/&lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5) and A2=(-1/&lt;img alt=&quot;sqrt&quot; height=&quot;13&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/sqrt.gif&quot; width=&quot;8&quot; /&gt;5).&lt;br /&gt;
&lt;br /&gt;
ie. the formula for f(n)= &lt;br /&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;1&quot;&gt;&lt;tbody&gt;
&lt;tr align=&quot;center&quot;&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;(&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/openbkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;img alt=&quot;(&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/openbkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td&gt;1 + √5&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;)&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/closebkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;sup&gt;n&lt;/sup&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;–&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;(&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/openbkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td&gt;1 – √5&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;)&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/closebkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;top&quot;&gt;&lt;sup&gt;n&lt;/sup&gt;&lt;/td&gt;&lt;td rowspan=&quot;3&quot; valign=&quot;middle&quot;&gt;&lt;img alt=&quot;)&quot; height=&quot;36&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/closebkt1.gif&quot; width=&quot;6&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;td&gt;&lt;img alt=&quot;--&quot; height=&quot;1&quot; src=&quot;http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/black.gif&quot; width=&quot;100%&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr align=&quot;center&quot;&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;√5&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
This formula is called &lt;br /&gt;
I present a simple python program to implement this..&lt;br /&gt;
&lt;br /&gt;
import math&lt;br /&gt;a=math.sqrt(5)&lt;br /&gt;p=(1+a)/2&lt;br /&gt;q=(1-a)/2&lt;br /&gt;n=raw_input(&quot;enter the number n&amp;nbsp; : &quot;)&lt;br /&gt;n=int(n)&lt;br /&gt;print int((p**n-q**n)/a)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/8672085155402917161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/03/answer-to-nth-fibonacci-number.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/8672085155402917161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/8672085155402917161'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/03/answer-to-nth-fibonacci-number.html' title='Answer to nth fibonacci number'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-683551067181582933</id><published>2012-03-21T08:28:00.000-07:00</published><updated>2012-03-21T08:28:03.159-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="direct nth fibonacci number"/><title type='text'>Find nth fibonacci number without traversing from the start</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Write a program to find the nth fibonacci number without traversing from the start index.&lt;br /&gt;
ie.. the program should have a time complexity of the order of 1 [O(1)].&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/683551067181582933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/03/find-nth-fibonacci-number-without.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/683551067181582933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/683551067181582933'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/03/find-nth-fibonacci-number-without.html' title='Find nth fibonacci number without traversing from the start'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-5913107240217861795</id><published>2012-03-06T23:32:00.000-08:00</published><updated>2012-03-06T23:32:57.899-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="algorithm to find determinant"/><category scheme="http://www.blogger.com/atom/ns#" term="determinant of a matrix"/><title type='text'>Answer to &quot;Find the determinant&quot;</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;u&gt;&lt;b&gt;Program :&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include &amp;lt;math.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;br /&gt;#define EPSILON 1e-10&lt;br /&gt;&lt;br /&gt;typedef enum {FALSE, TRUE} bool;&lt;br /&gt;int N;&lt;br /&gt;void print( double **a) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * print the matrix.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i, j;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( i=0; i&amp;lt;N; ++i ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( j=0; j&amp;lt;N; ++j )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;%8.4g &quot;, a[i][j] );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;\n&quot; );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;\n&quot; );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void divRow( double **a, int row, double divisor ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * divides row of a by divisor.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int j;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( j=0; j&amp;lt;N; ++j )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; a[row][j] /= divisor;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void subRow( double **a, int row1, int row2 ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * row1 -= row2.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int j;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( j=0; j&amp;lt;N; ++j )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a[row1][j] -= a[row2][j];&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;bool anyZero( double **a ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * returns TRUE if any diagonal entry of a is zero (less than EPSILON).&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( i=0; i&amp;lt;N; ++i )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( fabs(a[i][i]) &amp;lt;= EPSILON )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return TRUE;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return FALSE;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;double makeUpper( double **a ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * makes a an upper-triangular matrix.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * returns 0 if any of the diagonal entries are 0; 1 otherwise.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i, j;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; double factor = 1.0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; double temp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( i=1; i&amp;lt;N; ++i )&amp;nbsp;&amp;nbsp;&amp;nbsp; // dont worry about row 0.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( j=0; j&amp;lt;i; ++j ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp = a[i][j];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( fabs(temp) &amp;gt; EPSILON ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;factor=%g dividing row %d by %g...\n&quot;, factor, i+1, temp );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divRow( a, i, temp );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor *= temp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp = a[j][j];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( fabs(temp) &amp;gt; EPSILON &amp;amp;&amp;amp; fabs(temp-1.0) &amp;gt; EPSILON ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;factor=%g dividing row %d by %g...\n&quot;, factor, j+1, temp );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divRow( a, j, temp );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor *= temp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( fabs(a[i][j]) &amp;gt; EPSILON ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf( &quot;factor=%g row[%d] -= row[%d]...\n&quot;, factor, i+1, j+1 );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subRow( a, i, j );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if( anyZero(a) == TRUE )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a[N-1][N-1] *= factor;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // all but(?) last element of row N-1 are zero.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; double multDia( double **a ) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * returns multiplication of diagonal elements.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double factor = 1;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for( i=0; i&amp;lt;N; ++i )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor *= a[i][i];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return factor;&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; int main() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i,j;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double **a;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double factor;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;\n enter the dimension of the matrix : &quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; scanf(&quot; %d&quot;,&amp;amp;N);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a=(double **)malloc (N*sizeof (double *));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;N;i++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; a[i]=(double&amp;nbsp; *)malloc (N *sizeof(double));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;N;i++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&quot;\n enter row %d : &quot;,i+1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0;j&amp;lt;N;j++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; scanf(&quot; %lf&quot;,&amp;amp;a[i][j]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; print(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp; factor = makeUpper(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp; print(a);&lt;br /&gt;&amp;nbsp;&amp;nbsp; printf( &quot;determinant = %g.\n&quot;, factor*multDia(a) );&lt;br /&gt;}&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Explanation&lt;/b&gt;&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The usual way of finding the value of an N × N determinant is to take the first element of the first row and multiply it by the value of the determinant formed by removing that row and that column. This procedure is followed recursively at every step until only a single element remains whose value itself is the value of the 1 × 1 determinant. The sign of the element being multiplied may change depending on its row and column. In general, if the element has row i and column j, then its sign is determined by the formula (−1)^(i+j).&lt;br /&gt;&amp;nbsp;&amp;nbsp; 2.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; There is another way to solve the problem. We note that if we perform row or column transformations on the determinant, its value does not change. We take advantage of this fact to transform the matrix corresponding to the determinant into an upper or lower triangular matrix and then find its determinant value. It becomes clear that the determinant value of an upper or lower triangular matrix is the product of the diagonal elements. Thus the job of finding a determinant value is basically a matter of making a matrix upper or lower triangular.&lt;br /&gt;&amp;nbsp;&amp;nbsp; 3.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To make a matrix upper triangular (makeUpper()), we perform row transformations on the matrix. Another important observation is that multiplication of a determinant D by a value v is a new determinant in which any of the rows of D are multiplied by v. Multiplication of a row by v means multiplying each element in the row by v. Thus we maintain a variable factor that keeps track of the multiplier as the rows of the determinant are multiplied or divided by various factors in the process of upper-triangulation. We assume all elements of the determinant to be floating-point numbers.&lt;br /&gt;&amp;nbsp;&amp;nbsp; 4.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the process of upper-triangulation, if any of the diagonal elements become 0 (anyZero()), that means the value of the determinant is 0 (remember that the value of the determinant is the multiplication of diagonal elements (multDia()).&lt;br /&gt;&amp;nbsp;&amp;nbsp; 5.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Since here we assume that the elements are floating-point numbers, the calculations might not be exact. To account for this approximation, we maintain an error term EPSILON which is set to a sufficiently low value (tending to 0). Any value in the range +EPSILON…0…–EPSILON is considered to be 0.&lt;br /&gt;&amp;nbsp;&amp;nbsp; 6.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The algorithm for making a matrix upper triangular is as follows:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor = 1.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for i=1 to N-1 do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j=0 to i-1 do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divide row i by D[i][j]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // divRow().&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor *= D[i][j].&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divide row j by D[j][j]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // divRow().&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor *= D[j][j].&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; subtract elements of row j from corresponding elements of row i&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // subRow().&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; check for any of the diagonal elements of D to be 0.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // anyZero().&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; determinant = factor*product of diagonal elements.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; 7.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;&lt;b&gt;Example:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; Let the determinant be&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 8 0 1 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 2 1 3 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 5 3 9 |.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; factor = 1.&lt;br /&gt;&lt;br /&gt;Snapshots of the algorithm when run on this determinant are shown here.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;I&amp;nbsp;&lt;/u&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;u&gt; J&lt;/u&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;u&gt;&amp;nbsp; STEP&lt;/u&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;FACTOR&amp;nbsp;&lt;/u&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;DETERMINANT&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divide row 1 by 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |8&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 |&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |1 &amp;nbsp; &amp;nbsp;&amp;nbsp; 0.5&amp;nbsp;&amp;nbsp; 1.5 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 9 |&lt;br /&gt;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp; divide row 0 by 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.5&amp;nbsp; |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9 |&lt;br /&gt;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; row 1 −= row 0|&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.5&amp;nbsp; 1.375 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9 |&lt;br /&gt;&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp; divide row 2 by 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.5&amp;nbsp;&amp;nbsp; 1.375 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.8 |&lt;br /&gt;&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; row 2 −= row 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.5&amp;nbsp; 1.375 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.6&amp;nbsp; 1.675 |&lt;br /&gt;&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; divide row 2 by 0.6&amp;nbsp;&amp;nbsp;&amp;nbsp; 48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.5&amp;nbsp; 1.375 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; 2.792 |&lt;br /&gt;&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; divide row 1 by 0.5&amp;nbsp;&amp;nbsp;&amp;nbsp; 24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.75 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; 2.792 |&lt;br /&gt;&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; row 2 −= row 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.125 |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.75&amp;nbsp; |&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp; 0.0417|&lt;br /&gt;&lt;br /&gt;Thus, the determinant = 24*(1*1*0.0417) = 1.&lt;br /&gt;
&lt;br /&gt;&lt;u&gt;&lt;b&gt;Points to Remember&lt;/b&gt;&lt;/u&gt;:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; 1.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The first way to solve the problem recursively was natural but clumsy, as it requires removal of a row and a column. So, when designing an algorithm, we should try different approaches and then select the most appropriate one.&lt;br /&gt;&amp;nbsp;&amp;nbsp; 2.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Note how we reduced the problem of finding a determinant value to making a matrix upper triangular. These reductions not only simplify a problem but can also help in reusing the code and analysis.&lt;br /&gt;&amp;nbsp;&amp;nbsp; 3.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; An error term such as EPSILON should be used in floating point computations.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/5913107240217861795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/03/answer-to-find-determinant.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5913107240217861795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5913107240217861795'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/03/answer-to-find-determinant.html' title='Answer to &quot;Find the determinant&quot;'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-5788192613554441854</id><published>2012-03-06T20:19:00.001-08:00</published><updated>2012-03-06T20:19:37.159-08:00</updated><title type='text'>Find the determinant</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Write a program to find the determinant of an N*N matrix.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/5788192613554441854/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/03/find-determinant.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5788192613554441854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5788192613554441854'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/03/find-determinant.html' title='Find the determinant'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-1770050501786262814</id><published>2012-02-28T12:26:00.000-08:00</published><updated>2012-02-28T12:26:37.387-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="check whether a graph is a tree"/><category scheme="http://www.blogger.com/atom/ns#" term="cycle detection algorithm in a graph"/><title type='text'>Answer to &quot;All Graphs are not Trees&quot;</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div&gt;
A graph is said to be a tree when it has no cyclic path in it .&lt;/div&gt;
&lt;div&gt;
So the program focuses to find out whether the given graph is acyclic&lt;/div&gt;
&lt;div&gt;
by using a two dimensional array of size m*n.&lt;/div&gt;
&lt;div&gt;
Each row contains the max limit of array,start node and the adjacent nodes from&lt;/div&gt;
&lt;div&gt;
the previous node.Last index is a flag which is used in case of undirected graph&lt;/div&gt;
&lt;div&gt;
as here.&lt;/div&gt;
&lt;div&gt;
In undirected graph when 1-2 is the edge , there is an edge also from 2-1.&lt;/div&gt;
&lt;div&gt;
Eg :-we prove that the graph&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrnVJh361JYDX2z0RW27mk37nzZ4pgG7477LAp0jOiPlYIA44PAbDgDRzYHJ765Ljjnv5A1ujs48OtZ7gYbHHpi0WAG0f4-KuETN6K9Yl84vlITTrH9ZNOYN9Y7DCsThZCdWkguyR30Tg/s1600/graph.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrnVJh361JYDX2z0RW27mk37nzZ4pgG7477LAp0jOiPlYIA44PAbDgDRzYHJ765Ljjnv5A1ujs48OtZ7gYbHHpi0WAG0f4-KuETN6K9Yl84vlITTrH9ZNOYN9Y7DCsThZCdWkguyR30Tg/s400/graph.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
given by the input :&lt;/div&gt;
&lt;div&gt;
3 3&lt;/div&gt;
&lt;div&gt;
1 2&lt;/div&gt;
&lt;div&gt;
1 3&lt;/div&gt;
&lt;div&gt;
2 3&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
is cyclic &amp;nbsp;as shown in the diagram.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM3MuHlgIgD23LVeTQ09Wk9XpvsdgZCwwOpuGl8C3YhyphenhyphenoRfsvVqx67nHukWM0F5ImESqyG_VTaLjpnr36kTEoaFN8-6ky-PutwNaqUqUpqD9tXp4IAObUL-QZJ6cQ4Z-WTMoQJ9jF34fk/s1600/table.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM3MuHlgIgD23LVeTQ09Wk9XpvsdgZCwwOpuGl8C3YhyphenhyphenoRfsvVqx67nHukWM0F5ImESqyG_VTaLjpnr36kTEoaFN8-6ky-PutwNaqUqUpqD9tXp4IAObUL-QZJ6cQ4Z-WTMoQJ9jF34fk/s400/table.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;If for any row , the first and the last element are same,&lt;/div&gt;
&lt;div&gt;
then the graph is cyclic,that is not a tree.Here in the second row ,node 2 comes&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
in front and rear.&lt;/div&gt;
&lt;div&gt;
The program is described as follows..&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;/div&gt;
&lt;div&gt;
#include&amp;lt;stdlib.h&amp;gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
void print( int **a,int n, int m)&lt;/div&gt;
&lt;div&gt;
{&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; int i,j;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; for(i=0;i&amp;lt;n;i++)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; for(j=0;j&amp;lt;a[i][0];j++)printf(&quot;%d &quot;,a[i][j]);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; printf(&quot;\n&quot;);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; printf(&quot;\n&quot;);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
int main()&lt;/div&gt;
&lt;div&gt;
{&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; int n,m,i,j,k,r,c,**a,flag=0,temp,*pos;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; scanf(&quot;%d%d&quot;,&amp;amp;n,&amp;amp;m);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; pos=(int *)malloc(n*sizeof(int));&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; a=(int **)malloc(n*sizeof(int *));&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; for(i=0;i&amp;lt;n;i++)a[i]=(int *)malloc((m+2)*sizeof(int));&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; for(i=0;i&amp;lt;n;i++){ a[i][1]=i+1; a[i][0]=2;}&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; for(i=0;i&amp;lt;m;i++)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; scanf(&quot;%d%d&quot;,&amp;amp;r,&amp;amp;c);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; for(k=0;k&amp;lt;n;k++)pos[k]=0;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;if(r==c){ flag=1; break;}&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; if(r!=c)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;for(j=0;j&amp;lt;n;j++)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; if(a[j][a[j][0]-1]==r){ a[j][a[j][0]]=c; a[j][0]++; pos[j]=1; &amp;nbsp;} &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp;}&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;for(j=0;j&amp;lt;n;j++)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;if(pos[j]==0&amp;amp;&amp;amp;a[j][a[j][0]-1]==c){ a[j][a[j][0]]=r; a[j][0]++; } &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; } &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;print(a,n,m);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; if(flag==1){printf(&quot;NOT A TREE\n&quot;); return 0; }&lt;/div&gt;
&lt;div&gt;
for(i=0;i&amp;lt;n;i++)&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; {&lt;/div&gt;
&lt;div&gt;
if(a[i][0]&amp;gt;2&amp;amp;&amp;amp;a[i][1]==a[i][a[i][0]-1]){printf(&quot;YES\n&quot;); return 0;}&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; }&lt;/div&gt;
&lt;div&gt;
printf(&quot;TREE\n&quot;);&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/1770050501786262814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-to-all-graphs-are-not-trees.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/1770050501786262814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/1770050501786262814'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-to-all-graphs-are-not-trees.html' title='Answer to &quot;All Graphs are not Trees&quot;'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrnVJh361JYDX2z0RW27mk37nzZ4pgG7477LAp0jOiPlYIA44PAbDgDRzYHJ765Ljjnv5A1ujs48OtZ7gYbHHpi0WAG0f4-KuETN6K9Yl84vlITTrH9ZNOYN9Y7DCsThZCdWkguyR30Tg/s72-c/graph.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-2476532627078557708</id><published>2012-02-28T05:40:00.003-08:00</published><updated>2012-02-28T10:56:28.180-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="acyclic graph"/><category scheme="http://www.blogger.com/atom/ns#" term="all graphs are not trees"/><title type='text'>All Graphs are not Trees.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;background-color: white; color: #444444; font-family: Arial, sans-serif; font-size: 12px; line-height: 1.5em; padding-bottom: 2px; padding-left: 4px; padding-right: 4px; padding-top: 2px; text-align: justify;&quot;&gt;
You are given an unweighted, undirected graph. Write a program to check if it&#39;s a tree topology.&lt;/div&gt;
&lt;div style=&quot;background-color: white; padding-bottom: 2px; padding-left: 4px; padding-right: 4px; padding-top: 2px; text-align: justify;&quot;&gt;
&lt;span style=&quot;color: #444444; font-family: Arial, sans-serif; font-size: 12px; line-height: 1.5em;&quot;&gt;The first line of the input file contains two integers N and M --- number of nodes and number of edges in the graph . Next M lines contain M edges of that graph --- Each line contains a pair (u, v) means there is an edge between node u and node v (1 &amp;lt;= u,v &amp;lt;= N).&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; padding-bottom: 2px; padding-left: 4px; padding-right: 4px; padding-top: 2px; text-align: justify;&quot;&gt;
&lt;span style=&quot;background-color: white; color: #656565; font-family: Arial, Helvetica, sans-serif; font-size: 15px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #656565; font-family: Arial, Helvetica, sans-serif; font-size: 15px;&quot;&gt;Example 1&lt;/span&gt;&lt;/div&gt;
&lt;pre style=&quot;background-color: white; color: #444444; font-family: Arial, Helvetica, sans-serif; font-size: 12px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;&quot;&gt;&lt;b&gt;Input:&lt;/b&gt;
3 2
1 2
2 3


&lt;b&gt;Output:&lt;/b&gt;
TREE

&lt;/pre&gt;
&lt;pre style=&quot;background-color: white; color: #444444; font-family: Arial, Helvetica, sans-serif; font-size: 12px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;&quot;&gt;&lt;h3 style=&quot;color: #656565; font-size: 15px; margin-bottom: 12px; margin-left: 0px; margin-right: 0px; margin-top: 8px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; white-space: normal;&quot;&gt;



Example 2&lt;/h3&gt;
&lt;pre style=&quot;font-family: Arial, Helvetica, sans-serif; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot;&gt;&lt;b&gt;Input:&lt;/b&gt;
3 3
1 2
1 3
2 3

&lt;b&gt;Output:&lt;/b&gt;
NOT A TREE&lt;/pre&gt;
&lt;pre style=&quot;font-family: Arial, Helvetica, sans-serif; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot;&gt;&lt;/pre&gt;
&lt;pre style=&quot;background-color: white; font-family: Arial, Helvetica, sans-serif; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot;&gt;&lt;h3 style=&quot;color: #656565; font-size: 15px; margin-bottom: 12px; margin-left: 0px; margin-right: 0px; margin-top: 8px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; white-space: normal;&quot;&gt;



&lt;/h3&gt;
&lt;/pre&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;/pre&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/2476532627078557708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/all-graphs-are-not-tress.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/2476532627078557708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/2476532627078557708'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/all-graphs-are-not-tress.html' title='All Graphs are not Trees.'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-3843756944859714720</id><published>2012-02-27T23:14:00.002-08:00</published><updated>2012-02-27T23:14:42.724-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Anagram of a string"/><title type='text'>answer-anagram</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
/* ---This program works for string consisting of alphabets and numbers ---*/&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;string.h&amp;gt;&lt;br /&gt;
#include&amp;lt;ctype.h&amp;gt;&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
char input[80],output[80],index[62];&lt;br /&gt;
int i;&lt;br /&gt;
printf(&quot;Enter original string:&quot;);&lt;br /&gt;
scanf(&quot;%s&quot;,input);&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;62;i++)index[i]=0;&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;strlen(input);i++)&lt;br /&gt;
&amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; if(isalpha(input[i]))&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(isupper(input[i]))index[input[i]-39]++;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;else index[input[i]-97]++;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; else if(isdigit(input[i]))index[input[i]+4]++;&lt;br /&gt;
&amp;nbsp; }&lt;br /&gt;
printf(&quot;Enter string to be checked:&quot;);&lt;br /&gt;
scanf(&quot;%s&quot;,output);&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;strlen(output);i++)&lt;br /&gt;
&amp;nbsp; {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; if(isalpha(output[i]))&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(isupper(output[i]))index[output[i]-39]--;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;else index[output[i]-97]--;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; else if(isdigit(output[i]))index[output[i]+4]--;&lt;br /&gt;
&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
for(i=0;i&amp;lt;62;i++)if(index[i]){ printf(&quot;Not Anagram\n&quot;); return;}&lt;br /&gt;
&lt;br /&gt;
printf(&quot;Anagram\n&quot;);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/3843756944859714720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-anagram.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/3843756944859714720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/3843756944859714720'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-anagram.html' title='answer-anagram'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-7227057133491682313</id><published>2012-02-27T12:54:00.000-08:00</published><updated>2012-02-27T12:54:52.347-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Anagram of a string"/><category scheme="http://www.blogger.com/atom/ns#" term="permutation of a string"/><title type='text'>Anagram of a string</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white; color: #444444; font-family: Arial, sans-serif; line-height: 18px;&quot;&gt;You are given two strings S1 and S2, your task is to determine whether one string is an anagram of the other.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white; color: #444444; font-family: Arial, sans-serif; line-height: 18px;&quot;&gt;An anagram of a string is a string obtained by permuting the letters of a string.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: white; color: #444444; font-family: Arial, sans-serif; line-height: 18px;&quot;&gt;For example aaba and aaab are anagrams, while abcd and deba are not.&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/7227057133491682313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/anagram-of-string.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7227057133491682313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7227057133491682313'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/anagram-of-string.html' title='Anagram of a string'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-6314804823760207647</id><published>2012-02-27T06:43:00.000-08:00</published><updated>2012-02-27T06:43:14.636-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="bit vector"/><category scheme="http://www.blogger.com/atom/ns#" term="subset construction algorithm"/><title type='text'>answer for subset construction</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void increment(int a[],int i) &amp;nbsp; &amp;nbsp;//increments the bitvector by 1&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
if(a[i]==0||i==0)&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;a[i]=1;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;return;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
else&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;a[i]=0;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;increment(a,i-1);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void print_subsets(int numbers[],int bitvector[],int n) &amp;nbsp;//prints all the subsets of a set&lt;br /&gt;
{&lt;br /&gt;
int i,j,count=1;&lt;br /&gt;
&lt;br /&gt;
for(i=1;i&amp;lt;=n;i++)count=count*2; &amp;nbsp;//find no of subsets&lt;br /&gt;
printf(&quot;No of subsets=%d\n&quot;,count);&lt;br /&gt;
for(i=0;i&amp;lt;n;i++)bitvector[i]=0; &amp;nbsp; //initialise the bit vector&lt;br /&gt;
&lt;br /&gt;
printf(&quot;{ }\n&quot;); &amp;nbsp;// null set is always present&lt;br /&gt;
for(i=1;i&amp;lt;count;i++)&lt;br /&gt;
{&lt;br /&gt;
increment(bitvector,n-1); &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;
printf(&quot;{ &quot;);&lt;br /&gt;
for(j=0;j&amp;lt;n;j++) //scan the bit vector and print the corresponding number if its bit is set&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if(bitvector[j]==1)printf(&quot;%d &quot;,numbers[j]);&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;br /&gt;
printf(&quot;}\n&quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
int n,i,a[10],bitvector[10];&lt;br /&gt;
printf(&quot;Enter no of elements:\n&quot;);&lt;br /&gt;
scanf(&quot;%d&quot;,&amp;amp;n);&lt;br /&gt;
&lt;br /&gt;
printf(&quot;Enter the elements:\n&quot;);&lt;br /&gt;
for(i=0;i&amp;lt;n;i++)scanf(&quot;%d&quot;,&amp;amp;a[i]);&lt;br /&gt;
&lt;br /&gt;
print_subsets(a,bitvector,n);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/6314804823760207647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-for-subset-construction.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6314804823760207647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6314804823760207647'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-for-subset-construction.html' title='answer for subset construction'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-7481614574224432675</id><published>2012-02-26T05:01:00.000-08:00</published><updated>2012-02-26T05:23:34.789-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="subset construction algorithm"/><category scheme="http://www.blogger.com/atom/ns#" term="subset of set of numbers"/><title type='text'>All the subsets of a set of numbers</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Write a program to print all the subset of a set of numbers.&lt;br /&gt;
The original set of numbers is read from the user.&lt;br /&gt;
&lt;br /&gt;
Eg :-&lt;br /&gt;
input :1 2 3&lt;br /&gt;
output :.{NULL,1,2,3,12,13,23,123}&lt;br /&gt;
&lt;br /&gt;
input : 0 1&lt;br /&gt;
output :{NULL,0,1,01}&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/7481614574224432675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/all-subsets-of-set-of-numbers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7481614574224432675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7481614574224432675'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/all-subsets-of-set-of-numbers.html' title='All the subsets of a set of numbers'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-5639183387674080122</id><published>2012-02-25T09:45:00.001-08:00</published><updated>2012-02-25T09:45:13.434-08:00</updated><title type='text'>answer to question on feb 25</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;conio.h&amp;gt;&lt;br /&gt;
#include&amp;lt;string.h&amp;gt;&lt;br /&gt;
#include&amp;lt;dos.h&amp;gt;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
char str[80],output[80],*p;&lt;br /&gt;
int i;&lt;br /&gt;
clrscr();&lt;br /&gt;
printf(&quot;Enter the sentence\n&quot;);&lt;br /&gt;
gets(str);&lt;br /&gt;
p=strtok(str,&quot; .&quot;);&lt;br /&gt;
strcpy(output,p);&lt;br /&gt;
strcat(output,&quot; &quot;);&lt;br /&gt;
clrscr();&lt;br /&gt;
printf(&quot;%80s&quot;,output);&lt;br /&gt;
while(1)&lt;br /&gt;
{&lt;br /&gt;
delay(1000);&lt;br /&gt;
p=strtok(NULL,&quot; .&quot;);&lt;br /&gt;
if(p!=NULL)&lt;br /&gt;
{&lt;br /&gt;
strcat(output,p);&lt;br /&gt;
strcat(output,&quot; &quot;);&lt;br /&gt;
clrscr();&lt;br /&gt;
printf(&quot;%80s&quot;,output);&lt;br /&gt;
}&lt;br /&gt;
else break;&lt;br /&gt;
}&lt;br /&gt;
for(i=75;i&amp;gt;0;i=i-5)&lt;br /&gt;
{&lt;br /&gt;
delay(1000);&lt;br /&gt;
clrscr();&lt;br /&gt;
printf(&quot;%*s&quot;,i,output);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
getch();&lt;br /&gt;
&lt;br /&gt;
return 0;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/5639183387674080122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-to-question-on-feb-25.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5639183387674080122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/5639183387674080122'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/answer-to-question-on-feb-25.html' title='answer to question on feb 25'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-7750128678856335707</id><published>2012-02-25T06:21:00.002-08:00</published><updated>2012-02-25T06:26:41.986-08:00</updated><title type='text'>Question of the day</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;Write a program to display a moving sentence&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;which is taken from the user as input.&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;The movement should be from right to left.&lt;/span&gt;&lt;/span&gt;

&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;The sentence should be moving continuously&lt;/span&gt;&lt;/span&gt;

&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia,&#39;Times New Roman&#39;,serif;&quot;&gt;&amp;nbsp;and should reappear on termination&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/7750128678856335707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/question-of-day.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7750128678856335707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/7750128678856335707'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/question-of-day.html' title='Question of the day'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-6408858120751342607</id><published>2012-02-24T06:17:00.000-08:00</published><updated>2012-02-25T06:19:12.084-08:00</updated><title type='text'>answers to quesion on Feb 23</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;The question was :&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif; line-height: 18px;&quot;&gt;Write a program to determine whether an input string has unique characters or not using atmost two primitive data structures ?&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;background-color: white; color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif; line-height: 18px;&quot;&gt;[ Hint : primitive data structure may be integer,character. ]&lt;/span&gt;&lt;/span&gt;

&lt;span style=&quot;font-size: small;&quot;&gt;
&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: Arial,Tahoma,Helvetica,FreeSans,sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222;&quot;&gt;&lt;span style=&quot;font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif; line-height: 18px;&quot;&gt;It can be done by using recursive approach.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;

&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; line-height: 18px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;The code is given below :&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; line-height: 18px;&quot;&gt;&lt;span style=&quot;font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif; font-size: xx-small;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;#include&amp;lt;stdio.h&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;#include&amp;lt;string.h&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;char str[30];&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;int i;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;void check(char a,int x)&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;{&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;if (a==&#39;\0&#39;)&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;printf(&quot;\n all the charachers are unique\n&quot;);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;getch();&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;exit (0);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;for (i=x-1;i&amp;gt;=0;i--)&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;if (a==str[i])&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;printf(&quot;\nall characters are not unique&quot;);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;printf(&quot;\n &#39;%c&#39; is being repeated\n&quot;,a);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;getch();&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;exit(0);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;check(str[x+1],x+1);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;main()&lt;/span&gt;&lt;/span&gt;


&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;{&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;clrscr();&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;printf(&quot;\n enter the string :&quot;);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;scanf (&quot;%[^\n]&quot;,str);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;check(str[0],0);&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;return 1;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #222222; font-family: &#39;Helvetica Neue&#39;,Arial,Helvetica,sans-serif;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/6408858120751342607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/answers-to-quesion-on-feb-23.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6408858120751342607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/6408858120751342607'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/answers-to-quesion-on-feb-23.html' title='answers to quesion on Feb 23'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-246723489367006212.post-2370551019543855206</id><published>2012-02-23T06:01:00.000-08:00</published><updated>2012-02-25T06:16:52.925-08:00</updated><title type='text'>Quesion of the day</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;post-body entry-content&quot; id=&quot;post-body-3895822720045090443&quot;&gt;

&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;

Write a program to determine whether an input string has unique characters or not using atmost two primitive data structures other than the string?&lt;br /&gt;
&lt;br /&gt;
[ Hint : primitive data structure may be integer,character. ]&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;post-author vcard&quot;&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codequiz.blogspot.com/feeds/2370551019543855206/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://codequiz.blogspot.com/2012/02/quesion-of-day.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/2370551019543855206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/246723489367006212/posts/default/2370551019543855206'/><link rel='alternate' type='text/html' href='http://codequiz.blogspot.com/2012/02/quesion-of-day.html' title='Quesion of the day'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03651407724008449141</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>