git reimport
This commit is contained in:
69
archive/2016.08/2016.08.17 - unsorted/Slerk.java
Normal file
69
archive/2016.08/2016.08.17 - unsorted/Slerk.java
Normal file
@@ -0,0 +1,69 @@
|
||||
package chelper;
|
||||
|
||||
import io.InputReader;
|
||||
import io.OutputWriter;
|
||||
|
||||
public class Slerk {
|
||||
|
||||
public void solve(int testNumber, InputReader in, OutputWriter out) {
|
||||
// int n = in.nextInt();
|
||||
for (int n = 1; n <= 1000; n++) {
|
||||
f(n, out);
|
||||
}
|
||||
}
|
||||
|
||||
void f(int n, OutputWriter out) {
|
||||
int[] yearMonthDay = {1, 1, 1};
|
||||
if (n > 220) {
|
||||
n -= 220;
|
||||
yearMonthDay[0] += 12;
|
||||
yearMonthDay[0] += (n / 66);
|
||||
n %= 66;
|
||||
if (n == 0) {
|
||||
yearMonthDay[0] -= 1;
|
||||
yearMonthDay[1] = 12;
|
||||
yearMonthDay[2] = 11;
|
||||
out.println(yearMonthDay[0] + "/" + yearMonthDay[1] + "/" + yearMonthDay[2]);
|
||||
return;
|
||||
}
|
||||
int cur = 0;
|
||||
for (int i = 1; i < 12; i++) {
|
||||
cur += i;
|
||||
if (n <= cur) {
|
||||
yearMonthDay[1] = i + 1;
|
||||
cur -= i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
n -= cur;
|
||||
yearMonthDay[2] = n;
|
||||
out.println(yearMonthDay[0] + "/" + yearMonthDay[1] + "/" + yearMonthDay[2]);
|
||||
} else {
|
||||
int[] c = {1, 3, 6, 10, 15, 21, 28, 36, 45, 55};
|
||||
yearMonthDay[0] = 3;
|
||||
int cur = 0;
|
||||
for (int i = 0; i < 11; i++) {
|
||||
cur += c[i];
|
||||
if (n > cur) {
|
||||
yearMonthDay[0]++;
|
||||
} else {
|
||||
cur -= c[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
n -= cur;
|
||||
cur = 0;
|
||||
for (int i = 1; i < 12; i++) {
|
||||
cur += i;
|
||||
if (n <= cur) {
|
||||
yearMonthDay[1] = i + 1;
|
||||
cur -= i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
n -= cur;
|
||||
yearMonthDay[2] = n;
|
||||
out.println(yearMonthDay[0] + "/" + yearMonthDay[1] + "/" + yearMonthDay[2]);
|
||||
}
|
||||
}
|
||||
}
|
1044
archive/2016.08/2016.08.17 - unsorted/Slerk.task
Normal file
1044
archive/2016.08/2016.08.17 - unsorted/Slerk.task
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user