<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
	<!-- DOMjudge version 3.3.2 -->
<title>Source: s1142</title>
<link rel="shortcut icon" href="../images/favicon.png" type="image/png" />
<link rel="stylesheet" href="../style.css" type="text/css" />
<link rel="stylesheet" href="style_jury.css" type="text/css" />
<script type="text/javascript" src="../js/sorttable.js"></script>
<script type="text/javascript" src="../js/domjudge.js"></script>
</head>
<body>

<h2>Source code for submission s1142</h2>

<p><a href="#diff">Go to diff to previous submission</a></p>

<div class="tabber"><div class="tabbertab"><h2 class="filename"><a name="source0"></a>ants2.cpp</h2> 

<pre class="cpp" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #339900;">#include &lt;cstdio&gt;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #339900;">#include &lt;cstring&gt;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #339900;">#include &lt;cstdlib&gt;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #0000ff;">struct</span> Ant <span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">int</span> dir<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">int</span> start<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">&#125;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #0000ff;">int</span> main<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">int</span> ants, pos, woodlen<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">char</span> dir<span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">while</span><span style="color: #008000;">&#40;</span><span style="color: #0000dd;">scanf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;%d %d&quot;</span>, <span style="color: #000040;">&amp;</span>woodlen, <span style="color: #000040;">&amp;</span>ants<span style="color: #008000;">&#41;</span><span style="color: #000080;">&gt;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span> </div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		Ant <span style="color: #000040;">*</span>wood<span style="color: #008000;">&#91;</span>woodlen<span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000dd;">memset</span> <span style="color: #008000;">&#40;</span>wood,<span style="color: #0000ff;">NULL</span>,woodlen<span style="color: #000040;">*</span><span style="color: #0000dd;">sizeof</span><span style="color: #008000;">&#40;</span>Ant<span style="color: #000040;">*</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000ff;">for</span><span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span> i<span style="color: #000080;">=</span><span style="color: #0000dd;">0</span><span style="color: #008080;">;</span> i<span style="color: #000080;">&lt;</span>ants<span style="color: #008080;">;</span> i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span> </div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000dd;">scanf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;%d %c&quot;</span>, <span style="color: #000040;">&amp;</span>pos, <span style="color: #000040;">&amp;</span>dir<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			Ant <span style="color: #000040;">*</span>a <span style="color: #000080;">=</span> <span style="color: #0000dd;">new</span> Ant<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>dir<span style="color: #000080;">==</span><span style="color: #FF0000;">'R'</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				a<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir <span style="color: #000080;">=</span> <span style="color: #0000dd;">1</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				a<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir <span style="color: #000080;">=</span> <span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			a<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #000080;">=</span>pos<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			wood<span style="color: #008000;">&#91;</span>pos<span style="color: #008000;">&#93;</span><span style="color: #000080;">=</span>a<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span> <span style="color: #FF0000;">&quot;%d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>, a<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir <span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000ff;">int</span> <span style="color: #0000dd;">time</span><span style="color: #000080;">=</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		Ant <span style="color: #000040;">*</span> Lf,<span style="color: #000040;">*</span>Rf<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000ff;">while</span> <span style="color: #008000;">&#40;</span>ants <span style="color: #000080;">&gt;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			Lf<span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			Rf<span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span> wood<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#93;</span> <span style="color: #000040;">!</span><span style="color: #000080;">=</span> <span style="color: #0000ff;">NULL</span> <span style="color: #008000;">&#41;</span> <span style="color: #000040;">&amp;&amp;</span> <span style="color: #008000;">&#40;</span> wood<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#93;</span><span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir<span style="color: #000080;">==</span><span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #666666;">//L</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				Lf<span style="color: #000080;">=</span>wood<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				wood<span style="color: #008000;">&#91;</span><span style="color: #0000dd;">0</span><span style="color: #008000;">&#93;</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				ants<span style="color: #000040;">--</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#40;</span>wood<span style="color: #008000;">&#91;</span>woodlen<span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#93;</span><span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span><span style="color: #000040;">&amp;&amp;</span><span style="color: #008000;">&#40;</span>wood<span style="color: #008000;">&#91;</span>woodlen<span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#93;</span><span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir<span style="color: #000080;">==</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #666666;">//P</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				Rf<span style="color: #000080;">=</span>wood<span style="color: #008000;">&#91;</span>woodlen<span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				wood<span style="color: #008000;">&#91;</span>woodlen<span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008000;">&#93;</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				ants<span style="color: #000040;">--</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">for</span> <span style="color: #008000;">&#40;</span><span style="color: #0000ff;">int</span> i<span style="color: #000080;">=</span><span style="color: #0000dd;">1</span> <span style="color: #008080;">;</span> i<span style="color: #000080;">&lt;</span>woodlen<span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span> i<span style="color: #000040;">++</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">					<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>wood<span style="color: #008000;">&#91;</span>i<span style="color: #000040;">+</span>wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir<span style="color: #008000;">&#93;</span><span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span> <span style="color: #666666;">//jetam</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">						wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir<span style="color: #000040;">*</span><span style="color: #000080;">=</span><span style="color: #000040;">-</span><span style="color: #0000dd;">1</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">					<span style="color: #0000ff;">else</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">					<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">					    <span style="color: #666666;">//printf(&quot;Dir %d&quot;, wood[i]-&gt;dir );</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">						wood<span style="color: #008000;">&#91;</span>i<span style="color: #000040;">+</span>wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>dir<span style="color: #008000;">&#93;</span> <span style="color: #000080;">=</span> wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">						wood<span style="color: #008000;">&#91;</span>i<span style="color: #008000;">&#93;</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">						i<span style="color: #000040;">++</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">					<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000dd;">time</span><span style="color: #000040;">++</span><span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>Rf<span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span> <span style="color: #000040;">&amp;&amp;</span> Lf<span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">int</span> a <span style="color: #000080;">=</span> Rf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start,b <span style="color: #000080;">=</span> Lf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>Rf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start <span style="color: #000080;">&gt;</span> Lf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008000;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				a<span style="color: #000080;">=</span>Lf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008080;">;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				b<span style="color: #000080;">=</span>Rf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008080;">;</span>	</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;The last will fall down in %d seconds - started at %d and %d.<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>, <span style="color: #0000dd;">time</span>,a,b<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #0000ff;">else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">if</span><span style="color: #008000;">&#40;</span>Rf<span style="color: #000040;">!</span><span style="color: #000080;">=</span><span style="color: #0000ff;">NULL</span><span style="color: #008000;">&#41;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;The last will fall down in %d seconds - started at %d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>, <span style="color: #0000dd;">time</span>,Rf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #0000ff;">else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#123;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">				<span style="color: #0000dd;">printf</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">&quot;The last will fall down in %d seconds - started at %d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>, <span style="color: #0000dd;">time</span>,Lf<span style="color: #000040;">-</span><span style="color: #000080;">&gt;</span>start<span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">			<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">		<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #008000;">&#125;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">	<span style="color: #0000ff;">return</span> <span style="color: #0000dd;">0</span><span style="color: #008080;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">&#125;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li></ol></pre></div></div><h2><a name="diff"></a>Diff to submission <a href="823">s823</a></h2>
<div class="tabber"><div class="tabbertab"><h2 class="filename"><a name="diff"></a>ants.cpp</h2>

<pre class="output_text"><span class='diff-del'>--- c4.s823.cteam102.ants.cpp.0.ants.cpp</span>
<span class='diff-add'>+++ c4.s1142.cteam102.ants.cpp.0.ants2.cpp</span>
@@ -1,79 +1,105 @@
<span class='diff-del'>-#include &lt;stdio.h&gt;</span>
<span class='diff-del'>-#include &lt;algorithm&gt;</span>
<span class='diff-add'>+#include &lt;cstdio&gt;</span>
<span class='diff-add'>+#include &lt;cstring&gt;</span>
 
<span class='diff-del'>-#define debug(format,...) fprintf(stderr, format, __VA_ARGS__)</span>
<span class='diff-del'>-class Ant;</span>
<span class='diff-del'>-bool operator&lt; (const Ant&amp;, const Ant &amp;);</span>
<span class='diff-add'>+#include &lt;cstdlib&gt;</span>
 
<span class='diff-del'>-class Ant {</span>
<span class='diff-del'>-        public:</span>
<span class='diff-del'>-                bool left;</span>
<span class='diff-del'>-                int id;</span>
<span class='diff-del'>-                int time;</span>
<span class='diff-del'>-                friend bool operator&lt; (const Ant&amp;, const Ant &amp;);</span>
<span class='diff-del'>-/*              bool operator&lt;= (const Ant &amp;ant) {</span>
<span class='diff-del'>-                        return this-&gt;id &lt;= ant.id;</span>
<span class='diff-del'>-                }*/</span>
<span class='diff-del'>-                void reverse(Ant *ant) {</span>
<span class='diff-del'>-                        std::swap&lt;int&gt;(this-&gt;time, ant-&gt;time);</span>
<span class='diff-del'>-                        this-&gt;left = !this-&gt;left;</span>
<span class='diff-del'>-                        ant-&gt;left = !ant-&gt;left;</span>
<span class='diff-del'>-                }</span>
<span class='diff-del'>-                bool compare(Ant *ant) {</span>
<span class='diff-del'>-                        if(!this-&gt;left &amp;&amp; ant-&gt;left) {</span>
<span class='diff-del'>-                                this-&gt;reverse(ant);</span>
<span class='diff-del'>-                                return true;</span>
<span class='diff-del'>-                        }</span>
<span class='diff-del'>-                        return false;</span>
<span class='diff-del'>-                }</span>
<span class='diff-add'>+struct Ant {</span>
<span class='diff-add'>+        int dir;</span>
<span class='diff-add'>+        int start;</span>
 };
 
<span class='diff-del'>-bool operator&lt; (const Ant &amp;ant1, const Ant &amp;ant2) {</span>
<span class='diff-del'>-        return ant1.id &lt; ant2.id;</span>
<span class='diff-del'>-}</span>
<span class='diff-del'>-</span>
<span class='diff-del'>-</span>
<span class='diff-del'>-int main() {</span>
<span class='diff-del'>-        Ant ant[100000];</span>
<span class='diff-del'>-        int ants, pos, len, i, j;</span>
<span class='diff-del'>-        int maxTime=-1, maxAnt1=-1, maxAnt2=-1;</span>
<span class='diff-del'>-        char dir[3];</span>
<span class='diff-del'>-        while(scanf(&quot;%d %d&quot;, &amp;len, &amp;ants)&gt;0) {</span>
<span class='diff-del'>-                for(i=0; i&lt;ants; i++) {</span>
<span class='diff-del'>-                        scanf(&quot;%d %s&quot;, &amp;pos, dir);</span>
<span class='diff-del'>-                        ant[i].id = pos;</span>
<span class='diff-del'>-                        ant[i].left = (dir[0]=='L');</span>
<span class='diff-del'>-                        ant[i].time = (ant[i].left ? pos : len-pos);</span>
<span class='diff-add'>+int main()</span>
<span class='diff-add'>+{</span>
<span class='diff-add'>+        int ants, pos, woodlen;</span>
<span class='diff-add'>+        char dir;</span>
<span class='diff-add'>+        while(scanf(&quot;%d %d&quot;, &amp;woodlen, &amp;ants)&gt;0) </span>
<span class='diff-add'>+        {</span>
<span class='diff-add'>+                Ant *wood[woodlen];</span>
<span class='diff-add'>+                memset (wood,NULL,woodlen*sizeof(Ant*));</span>
<span class='diff-add'>+                </span>
<span class='diff-add'>+                for(int i=0; i&lt;ants; i++) </span>
<span class='diff-add'>+                {</span>
<span class='diff-add'>+                        scanf(&quot;%d %c&quot;, &amp;pos, &amp;dir);</span>
<span class='diff-add'>+                        Ant *a = new Ant;</span>
<span class='diff-add'>+                        if(dir=='R')</span>
<span class='diff-add'>+                                a-&gt;dir = 1;</span>
<span class='diff-add'>+                        else</span>
<span class='diff-add'>+                                a-&gt;dir = -1;</span>
<span class='diff-add'>+                        a-&gt;start=pos;</span>
<span class='diff-add'>+                        </span>
<span class='diff-add'>+                        wood[pos]=a;</span>
<span class='diff-add'>+                        printf( &quot;%d\n&quot;, a-&gt;dir );</span>
                 }
<span class='diff-del'>-                std::sort(ant+0, ant+ants);</span>
<span class='diff-del'>-                for(i=0; i&lt;ants-1; i++) {</span>
<span class='diff-del'>-                        j=i;</span>
<span class='diff-del'>-                        while(ant[j].compare(ant+j+1) &amp;&amp; j&gt;0) {</span>
<span class='diff-del'>-                                if(j==0) {</span>
<span class='diff-del'>-                                        break;</span>
<span class='diff-add'>+                                </span>
<span class='diff-add'>+                int time=1;</span>
<span class='diff-add'>+                Ant * Lf,*Rf;</span>
<span class='diff-add'>+                while (ants &gt;0)</span>
<span class='diff-add'>+                {</span>
<span class='diff-add'>+                        Lf=NULL;</span>
<span class='diff-add'>+                        Rf=NULL;</span>
<span class='diff-add'>+                        </span>
<span class='diff-add'>+                        if(( wood[0] != NULL ) &amp;&amp; ( wood[0]-&gt;dir==-1))//L</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                                Lf=wood[0];</span>
<span class='diff-add'>+                                wood[0]=NULL;</span>
<span class='diff-add'>+                                ants--;</span>
<span class='diff-add'>+                                </span>
<span class='diff-add'>+                        }</span>
<span class='diff-add'>+                        </span>
<span class='diff-add'>+                        if((wood[woodlen-1]!=NULL)&amp;&amp;(wood[woodlen-1]-&gt;dir==1))//P</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                                Rf=wood[woodlen-1];</span>
<span class='diff-add'>+                                wood[woodlen-1]=NULL;</span>
<span class='diff-add'>+                                ants--;</span>
<span class='diff-add'>+                        }</span>
<span class='diff-add'>+                </span>
<span class='diff-add'>+                        for (int i=1 ; i&lt;woodlen-1; i++)</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                        </span>
<span class='diff-add'>+</span>
<span class='diff-add'>+                                if(wood[i]!=NULL)</span>
<span class='diff-add'>+                                {</span>
<span class='diff-add'>+                                        if(wood[i+wood[i]-&gt;dir]!=NULL) //jetam</span>
<span class='diff-add'>+                                                wood[i]-&gt;dir*=-1;</span>
<span class='diff-add'>+                                        else</span>
<span class='diff-add'>+                                        {</span>
<span class='diff-add'>+                                            //printf(&quot;Dir %d&quot;, wood[i]-&gt;dir );</span>
<span class='diff-add'>+                                                wood[i+wood[i]-&gt;dir] = wood[i];</span>
<span class='diff-add'>+                                                wood[i]=NULL;</span>
<span class='diff-add'>+                                                i++;</span>
<span class='diff-add'>+                                        }</span>
                                 }
<span class='diff-del'>-                                j--;</span>
                         }
<span class='diff-add'>+                        </span>
<span class='diff-add'>+                        time++;</span>
<span class='diff-add'>+                        </span>
                 }
                 
<span class='diff-del'>-                maxTime = maxAnt2 = -1;</span>
<span class='diff-del'>-                for(i=0; i&lt;ants; i++) {</span>
<span class='diff-del'>-                        if(ant[i].time == maxTime) {</span>
<span class='diff-del'>-                                maxAnt2 = ant[i].id;</span>
<span class='diff-del'>-                        }else if (ant[i].time &gt; maxTime) {</span>
<span class='diff-del'>-                                maxAnt1 = ant[i].id;</span>
<span class='diff-del'>-                                maxAnt2 = -1;</span>
<span class='diff-del'>-                                maxTime = ant[i].time;</span>
<span class='diff-add'>+                if(Rf!=NULL &amp;&amp; Lf!=NULL)</span>
<span class='diff-add'>+                {</span>
<span class='diff-add'>+                        int a = Rf-&gt;start,b = Lf-&gt;start;</span>
<span class='diff-add'>+                        </span>
<span class='diff-add'>+                        if(Rf-&gt;start &gt; Lf-&gt;start)</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                                a=Lf-&gt;start;</span>
<span class='diff-add'>+                                b=Rf-&gt;start;    </span>
                         }
<span class='diff-add'>+                </span>
<span class='diff-add'>+                        printf(&quot;The last will fall down in %d seconds - started at %d and %d.\n&quot;, time,a,b);</span>
<span class='diff-add'>+                </span>
                 }
<span class='diff-del'>-                if (maxAnt2 == -1) {</span>
<span class='diff-del'>-                        printf(</span>
<span class='diff-del'>-                                &quot;The last ant will fall down in %d seconds - started at %d.\n&quot;,</span>
<span class='diff-del'>-                                maxTime, maxAnt1);</span>
<span class='diff-del'>-                }else {</span>
<span class='diff-del'>-                        printf(</span>
<span class='diff-del'>-                                &quot;The last ant will fall down in %d seconds - started at %d and %d.\n&quot;,</span>
<span class='diff-del'>-                                maxTime, maxAnt1, maxAnt2);</span>
<span class='diff-add'>+                </span>
<span class='diff-add'>+                else</span>
<span class='diff-add'>+                {</span>
<span class='diff-add'>+                        if(Rf!=NULL)</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                                printf(&quot;The last will fall down in %d seconds - started at %d\n&quot;, time,Rf-&gt;start);</span>
<span class='diff-add'>+                        }</span>
<span class='diff-add'>+                        else</span>
<span class='diff-add'>+                        {</span>
<span class='diff-add'>+                                printf(&quot;The last will fall down in %d seconds - started at %d\n&quot;, time,Lf-&gt;start);</span>
<span class='diff-add'>+                        }</span>
                 }
<span class='diff-add'>+        </span>
         }
         return 0;
</pre>

</div></div>
</body>
</html>
