ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1000. A+B Problem

aa
Послано Proba 30 окт 2010 17:49
this problem is so simple.
just read a and b then output a + b

Edited by author 30.10.2010 18:30
Re: aa
Послано Igor9669 30 окт 2010 18:14
Послано Proba 30 октября 2010 17:49

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;


public class H {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(new File("horrible.in"));
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("horrible.out")));
int n = sc.nextInt();
int count = 0;
if (n == 1) {
pw.println(1);
pw.println(1 + " " + 0);
pw.close();
return;
}
count = 2;
int[][] a = new int[100000][2];
a[0][0] = 2; a[0][1] = -1;
a[1][0] = 1; a[1][1] = 0;
int bil = 1;
int tek = 2;
int nbil = 2;
int ntek = 1;
int state = 1;
one: while(true) {
switch (state) {
case 1:
if (tek <= n) {
a[count][0] = tek; a[count][1] = bil;
count++;
// System.out.println(tek + " " + bil);
tek++;
if (tek == bil) {
tek++;
}
state = -1;
} else {
a[count][0] = ++bil; a[count][1] = 0;
count++;
// System.out.println((++bil) + " " + 0);
tek = 1;
nbil++;
ntek = 1;
state = 1;
if (bil >= n) {
break one;
}
}
break;
case -1:
if (ntek <= n) {
a[count][0] = ntek; a[count][1] = 0 - nbil;
count++;
// System.out.println(ntek + " -" + nbil);
ntek++;
if (ntek == nbil) {
ntek++;
}
state = 1;
} else {
a[count][0] = ++nbil; a[count][1] = 0;
count++;
// System.out.println((++nbil) + " " + 0);
ntek = 1;
tek = 1;
state = 1;
if (nbil >= n) {
break one;
}
}
break;
default:
break;
}

}
a[count][0] = 1; a[count][1] = n;
count++;
pw.println(count);
for (int i = 0; i < count; i++) {
pw.println(a[i][0] + " " + a[i][1]);
}
pw.close();
}

}
Re: aa
Послано holtaf 15 ноя 2010 20:22
:D