結果
問題 | No.190 Dry Wet Moist |
ユーザー |
|
提出日時 | 2020-03-27 06:30:04 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 819 ms / 2,000 ms |
コード長 | 955 bytes |
コンパイル時間 | 3,182 ms |
コンパイル使用メモリ | 88,044 KB |
実行使用メモリ | 69,700 KB |
最終ジャッジ日時 | 2025-01-02 08:10:35 |
合計ジャッジ時間 | 18,900 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 28 |
ソースコード
import java.util.ArrayList;import java.util.Arrays;import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Main{void tr(Object...objects) {System.out.println(Arrays.deepToString(objects));}int positive(int[] A) {int s=0,t=A.length-1;int ans=0;while(s<t) {while(s<t&&A[s]+A[t]<=0)++s;if(s==t)break;++ans;++s;--t;}return ans;}void run() {Scanner sc=new Scanner(System.in);int N=sc.nextInt();int[] A=new int[2*N];for(int i=0;i<2*N;++i)A[i]=sc.nextInt();Arrays.sort(A);int zero=0,positive=0,negative=0;int s=0,t=A.length-1;while(s<t) {if(-A[s]==A[t]) {++s;--t;++zero;}else if(-A[s]>A[t])++s;else --t;}positive=positive(A);for(int i=0;i<A.length;++i)A[i]*=-1;Arrays.sort(A);negative=positive(A);System.out.println(negative+" "+positive+" "+zero);}public static void main(String[] args){new Main().run();}}