Submission #1115056
Source Code Expand
#include <stdio.h> #include <inttypes.h> int ok(uint64_t s_num, uint64_t c_num, uint64_t target_num) { uint64_t s_tarinai; uint64_t c_as_c, c_as_s; if (s_num < target_num) { s_tarinai = target_num - s_num; } else { s_tarinai = 0; } c_as_c = target_num * 2; c_as_s = s_tarinai * 2; return c_as_c + c_as_s <= c_num; } int main(void) { uint64_t N, M; uint64_t left, right, mid; uint64_t answer = 0; if (scanf("%"SCNu64"%"SCNu64, &N, &M) != 2) return 1; left = 0; right = N + M; while (left <= right) { mid = (left + right) / 2; if (ok(N, M, mid)) { if (mid > answer) answer = mid; left = mid + 1; } else { right = mid - 1; } } printf("%"PRIu64"\n", answer); return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Scc Puzzle |
User | mikecat |
Language | C (GCC 5.4.1) |
Score | 300 |
Code Size | 743 Byte |
Status | AC |
Exec Time | 2 ms |
Memory | 128 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_example_01.txt, 00_example_02.txt |
All | 00_example_01.txt, 00_example_02.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_example_01.txt | AC | 0 ms | 128 KB |
00_example_02.txt | AC | 0 ms | 128 KB |
01.txt | AC | 2 ms | 128 KB |
02.txt | AC | 1 ms | 128 KB |
03.txt | AC | 0 ms | 128 KB |
04.txt | AC | 0 ms | 128 KB |
05.txt | AC | 0 ms | 128 KB |
06.txt | AC | 0 ms | 128 KB |
07.txt | AC | 0 ms | 128 KB |