mirror of
				https://gitee.com/coder-xiaomo/leetcode-problemset
				synced 2025-11-04 11:43:12 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<p>Table: <code>Insurance</code></p>
 | 
						|
 | 
						|
<pre>
 | 
						|
+-------------+-------+
 | 
						|
| Column Name | Type  |
 | 
						|
+-------------+-------+
 | 
						|
| pid         | int   |
 | 
						|
| tiv_2015    | float |
 | 
						|
| tiv_2016    | float |
 | 
						|
| lat         | float |
 | 
						|
| lon         | float |
 | 
						|
+-------------+-------+
 | 
						|
pid is the primary key (column with unique values) for this table.
 | 
						|
Each row of this table contains information about one policy where:
 | 
						|
pid is the policyholder's policy ID.
 | 
						|
tiv_2015 is the total investment value in 2015 and tiv_2016 is the total investment value in 2016.
 | 
						|
lat is the latitude of the policy holder's city. It's guaranteed that lat is not NULL.
 | 
						|
lon is the longitude of the policy holder's city. It's guaranteed that lon is not NULL.
 | 
						|
</pre>
 | 
						|
 | 
						|
<p> </p>
 | 
						|
 | 
						|
<p>Write a solution to report the sum of all total investment values in 2016 <code>tiv_2016</code>, for all policyholders who:</p>
 | 
						|
 | 
						|
<ul>
 | 
						|
	<li>have the same <code>tiv_2015</code> value as one or more other policyholders, and</li>
 | 
						|
	<li>are not located in the same city as any other policyholder (i.e., the (<code>lat, lon</code>) attribute pairs must be unique).</li>
 | 
						|
</ul>
 | 
						|
 | 
						|
<p>Round <code>tiv_2016</code> to <strong>two decimal places</strong>.</p>
 | 
						|
 | 
						|
<p>The result format is in the following example.</p>
 | 
						|
 | 
						|
<p> </p>
 | 
						|
<p><strong class="example">Example 1:</strong></p>
 | 
						|
 | 
						|
<pre>
 | 
						|
<strong>Input:</strong> 
 | 
						|
Insurance table:
 | 
						|
+-----+----------+----------+-----+-----+
 | 
						|
| pid | tiv_2015 | tiv_2016 | lat | lon |
 | 
						|
+-----+----------+----------+-----+-----+
 | 
						|
| 1   | 10       | 5        | 10  | 10  |
 | 
						|
| 2   | 20       | 20       | 20  | 20  |
 | 
						|
| 3   | 10       | 30       | 20  | 20  |
 | 
						|
| 4   | 10       | 40       | 40  | 40  |
 | 
						|
+-----+----------+----------+-----+-----+
 | 
						|
<strong>Output:</strong> 
 | 
						|
+----------+
 | 
						|
| tiv_2016 |
 | 
						|
+----------+
 | 
						|
| 45.00    |
 | 
						|
+----------+
 | 
						|
<strong>Explanation:</strong> 
 | 
						|
The first record in the table, like the last record, meets both of the two criteria.
 | 
						|
The tiv_2015 value 10 is the same as the third and fourth records, and its location is unique.
 | 
						|
 | 
						|
The second record does not meet any of the two criteria. Its tiv_2015 is not like any other policyholders and its location is the same as the third record, which makes the third record fail, too.
 | 
						|
So, the result is the sum of tiv_2016 of the first and last record, which is 45.
 | 
						|
</pre>
 |