Срочно нужна помощь

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
dirty_valera
Posts: 2
Joined: 26 April 2012, 10:53

Срочно нужна помощь

Post by dirty_valera » 26 April 2012, 10:57

Помогите пожалуйста, очень срочно нужно, ибо сдавать уже сегодня.
Сдаю задания на стажировку в Яндекс: https://ejudge.yandex.net/cgi-bin/new-c ... st_id=5002
ejudge - сервис для проверки задач по программированию.
У меня на компьютере моя программа компилируется и все работает.
Однако при отправке(там компилятор javac, отправляю файл .java) и компиляции на сайте выходит main class not found(что то вроде ClassFoundException wrong name) и ошибки связанные с ClassLoader и URLClassLoader. Я так понимаю что я каким-то образом должен указывать путь на скомпилированный .class файл. Но где это делать не пойму. В самом коде? или файл назвать так чтобы компилировалось с каким-нибудь параметром? Если нужно могу кинуть свой логин. Буду очень благодарен за помощь

dirty_valera
Posts: 2
Joined: 26 April 2012, 10:53

Re: Срочно нужна помощь

Post by dirty_valera » 26 April 2012, 20:49

программа ищет самую длинную подстроку n строк

Code: Select all

package word;
import java.io.*;
import java.util.*;
public class Word {
    public static void main(String[] args) throws Exception {
        
        BufferedReader b = new BufferedReader( new InputStreamReader(System.in));
        String s = b.readLine();
        int n = Integer.parseInt(s);
        String str[] = new String[n];        
        String str_new[] = new String[n];  
        for (int i =0; i<=n-1;i++){
            
            BufferedReader bb = new BufferedReader( new InputStreamReader(System.in));
            
            str[i] = bb.readLine();
        
        }
        for (int i =0; i<=n-1;i++){
             
            str_new[i]=str[i];
        }
        for (int i =1; i<=n-1;i++){
             
            if(str[i-1].length() <= str[i].length()){
                s=str[i-1];
                str[i]=str[i-1];
                str[i-1]=s;
            }
        }   
        String shortest = str[n-1];
        ArrayList<String> words = new ArrayList();        
        for ( int i = 0; i<=shortest.length()-1;i++){
            String st="";            
            for( int j = i ; j<=shortest.length()-1;j++){
                char c = shortest.charAt(j);                               
                st = st + Character.toString(c);
                words.add(st);
            }            
        }
        ArrayList<String> new_words = new ArrayList();
        for ( int i=0; i<=words.size()-1;i++){
            String S = words.get(i);
            int k = 0;
            for ( int j = 0; j<=n-1;j++){
                if(str_new[j].indexOf(S)!=-1){
                    k++;
                }
            }
            if (k==n){
                new_words.add(S);                
            }            
        }        
        String ST[] = new_words.toArray( new String[new_words.size()]);        
        for (int j=0; j<=ST.length-1;j++){
        for (int i =1; i<=ST.length-1;i++){
             
            if(ST[i-1].length() >= ST[i].length()){
                s=ST[i];
                ST[i]=ST[i-1];
                ST[i-1]=s;
            }
        }
        }
        int l = ST[ST.length-1].length();
        Set<String> set = new HashSet();
        for(int i=0; i<=ST.length-1;i++){
            
            if(ST[i].length()==l){
                
                set.add(ST[i]);
                
            }
            
        }
        Iterator i = set.iterator();  
        while(i.hasNext()){
            System.out.println(i.next());
        }
    }
}
выходит ошибка
====== Test #1 =======
--- Input ---
3
abacaba
mycabarchive
acabistrue

--- Output ---

--- Stderr ---
Exception in thread "main" java.lang.NoClassDefFoundError: Word (wrong name: word/Word)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
Could not find the main class: Word. Program will exit.
Пробовал менять класс на Main - не помогло.
Если убрать package то
====== Test #1 =======
--- Input ---
3
abacaba
mycabarchive
acabistrue

--- Output ---

--- Stderr ---
Exception in thread "main" java.lang.NullPointerException
at Word.main(Word.java:25)




Помогите!!

AndreyP
Posts: 16
Joined: 03 October 2011, 12:54

Re: Срочно нужна помощь

Post by AndreyP » 28 April 2012, 16:48

Убери первую строку
package word;

ind79ven
Posts: 16
Joined: 11 September 2014, 22:30

Re: Срочно нужна помощь

Post by ind79ven » 29 April 2021, 08:07

Как добавить ещё одну очень простую задачу, например задачу C: "На входе целое число - сторона куба. Написать программу, которая выведет объём куба v=a*a*a" ? Заранее спасибо. (используем с++ и питон).
Мы - начинающие. Уже научились регистрировать пользователей, отправлять на проверку пробные задачи. Систему установили из готового образа: Fedora-26-32-ejudge-20180322.ova

Post Reply