Submission #1477073
Source Code Expand
def scc_puzzle(): n,m = map(int, raw_input().split(" ")) max_ans = m/2 if n>=max_ans: print max_ans return else: min_ans = n # binary search while min_ans+1<max_ans: current_ans = (max_ans+min_ans)/2 if _check(current_ans, n ,m): max_ans = current_ans else: min_ans = current_ans # there is no opportunity for max_ans to be an ans # however, the min_ans could be, based on our _check() fun print min_ans return def _check(ans, n, m): total_c = ans*2+(ans-n)*2 if total_c>m: # current ans is too large return True else: return False if __name__ == "__main__": scc_puzzle()
Submission Info
Submission Time | |
---|---|
Task | C - Scc Puzzle |
User | zhuang |
Language | Python (2.7.6) |
Score | 300 |
Code Size | 655 Byte |
Status | AC |
Exec Time | 10 ms |
Memory | 2568 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 | 10 ms | 2568 KB |
00_example_02.txt | AC | 10 ms | 2568 KB |
01.txt | AC | 10 ms | 2568 KB |
02.txt | AC | 10 ms | 2568 KB |
03.txt | AC | 10 ms | 2568 KB |
04.txt | AC | 10 ms | 2568 KB |
05.txt | AC | 10 ms | 2568 KB |
06.txt | AC | 10 ms | 2568 KB |
07.txt | AC | 10 ms | 2568 KB |