Problema em java

boas, tenho que fazer um programa em java que simula o processo de votaçao, sendo o utilizador que insere o numero de opçoes onde votar e o numero de eleitores, atraves de um scanner. essa votaçao tem algumas restriçoes. sao elas: um eleitor apenas tem 100 pontos pra distribuir pelas opçoes, e nao pode haver votos negativos. o que tenho que fazer e estas restriçoes mas ta a ser muito complicado. pensei em fazer um procedimento mas mesmo assim tá-se a revelar complicado e cheio de erros, pois nao o consigo invocar nem criar devidamente.

Em baixo encontra-se o código actual:

[code]import java.util.Scanner;

public class MetodoCVN3 {
public static void main (String [] args) {

Scanner teclado = new Scanner (System.in);
String letras = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";


//pergunta ao utilizador o numero de opcoes desejado
System.out.println ("Insira o numero de opcoes, sff: ");
int numopcoes = teclado.nextInt ();


//pergunta ao utilizador o numero de eleitores
System.out.println ("Insira o numero de eleitores, sff: ");
int numeleitores = teclado.nextInt ();

int tabela [][] = new int [numeleitores][numopcoes];




String opcoes = "[" ;
for(int i = 0; i<numopcoes;i++){
    opcoes +=(char)('A'+i) + " ";  
}
opcoes+="]";
System.out.println(opcoes);

  	for (int i=0; i<numeleitores; i++){
    System.out.println("Voto do eleitor " + (i+1) +" " +opcoes + ":");
    for(int j=0;j<numopcoes; j++){		
	int voto = teclado.nextInt ();
		tabela [i][j] = voto;
    }	    
    }

int total = 0;
for(int j = 0; j<tabela[0].length; j++){
    total = 0;
    for(int i = 0; i<tabela.length; i++){
	total += tabela[i][j];
	
    }
    System.out.println("Total da Opcao " + letras.charAt(j) + ": " + total);
}


}      

[/code]

ajudem me por favor pois tenho urgencia em acabar o programa.obrigado.