Scanning columns for duplicates and printing in one line

Description of data:

NC_002737.1  4  F1VI4M001A3IAU F1VI4M001A3IAU F1VI4M001A3IAU F1VI4M001A3IAU
NC_006372.1  5   F1VI4M001BH0HY FF1VI4M001BH0HY F1VI4M001C0ZC5 F1VI4M001DOF2X F1VI4M001AYNTS

Every field in every record is tab separated
There can be "n" columns.

Problem:
What I want to achieve is following

NC_002737.1 4 F1VI4M001A3IAU 4
NC_006372.1 5 F1VI4M001BH0HY 2 F1VI4M001C0ZC5 1 F1VI4M001DOF2X 1 F1VI4M001AYNTS 1

So far this happening:

awk 'BEGIN{OFS="\t";cnt=0}{if (NF>3) {for (i=3;i<=NF;i++) {if ($(i)==$(i+1)) {cnt = cnt+1} print $1,$(i),cnt}}cnt=1}'

Output:

NC_002737.1     F1VI4M001A3IAU  2
NC_002737.1     F1VI4M001A3IAU  3
NC_002737.1     F1VI4M001A3IAU  4
NC_002737.1     F1VI4M001A3IAU  4
NC_006372.1     F1VI4M001BH0HY  2
NC_006372.1     F1VI4M001C0ZC5  1
NC_006372.1     F1VI4M001DOF2X  1
NC_006372.1     F1VI4M001AYNTS  1

I know the problem: For loop is going one by one and then it is printing the lines. At this I am not able to come up with a way to get the desired output (in one line)
as shown above.
Can any one suggest away. I can again write another awk script to do this, but I wondering if there is a way to get this fix all in go.

Thanks

use printf.

With awk[1]:

awk '{ 
  split(x, c); j = 0 # for GNU awk use delete c
  for (i = 0; ++i <= NF;)  
  if (i < 3) printf "%s\t", $i 
    else c[$i]++ || n[++j] = $i 
  for (i = 0; ++i <= j;)
    printf "%s", (n OFS c[n] (i < j ? OFS : RS))  
  }' OFS='\t' infile

Perl:

perl -lane'
  %_ = (); $_{$F[$_]}++ for 2..$#F;
  print join "\t", @F[0..1], map {$_, $_{$_}} keys %_;
  ' infile

[1]. Use GNU awk (gawk), Bell Labs New awk (nawk) or X/Open sawk (/usr/xpg4/bin/awk) on Solaris.
[2]. I'm assuming that every record has at least three fields. If you need something different, let me know.

while(<DATA>){
	my @tmp = split;
	my %hash;
	print $tmp[0]," ",$tmp[1]," ";
	map {$hash{$_}++} @tmp[2..$#tmp];
	foreach my $key(keys %hash){
		print $key," ",$hash{$key}," ";
	}
	print "\n";
}
__DATA__
NC_002737.1  4  F1VI4M001A3IAU F1VI4M001A3IAU F1VI4M001A3IAU F1VI4M001A3IAU
NC_006372.1  5   F1VI4M001BH0HY F1VI4M001BH0HY F1VI4M001C0ZC5 F1VI4M001DOF2X F1VI4M001AYNTS
test	6 a a a b b c c c d a b c d

Thanks everyone for your suggestions, I really wanted to make this work in AWK, but Perl codes are welcome. And many thanks for the code. I have not yet tried them, but will do now.
Cheers