AtCoder Beginner Contest 003

Submission #7464409

Source codeソースコード

import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.util.*;
 
public class Main  {
	static long mod=1000000000+7;
	public static void main(String[] args){
		PrintWriter out = new PrintWriter(System.out);
		InputReader sc=new InputReader(System.in);
		int N=sc.nextInt();
		int K=sc.nextInt();
		double[] b=new double[N];
		for (int i = 0; i < b.length; i++) {
			b[i]=sc.nextDouble();
		}
		Arrays.sort(b);
		double ans=0.0;
		for (int i = b.length-K; i < b.length; i++) {
			ans+=b[i];
			ans/=2.0;
		}
		System.out.println(ans);
	}
	static class InputReader { 
		private InputStream in;
		private byte[] buffer = new byte[1024];
		private int curbuf;
		private int lenbuf;
 
		public InputReader(InputStream in) {
			this.in = in;
			this.curbuf = this.lenbuf = 0;
		}
 
		public boolean hasNextByte() {
			if (curbuf >= lenbuf) {
				curbuf = 0;
				try {
					lenbuf = in.read(buffer);
				} catch (IOException e) {
					throw new InputMismatchException();
				}
				if (lenbuf <= 0)
					return false;
			}
			return true;
		}
 
		private int readByte() {
			if (hasNextByte())
				return buffer[curbuf++];
			else
				return -1;
		}
 
		private boolean isSpaceChar(int c) {
			return !(c >= 33 && c <= 126);
		}
 
		private void skip() {
			while (hasNextByte() && isSpaceChar(buffer[curbuf]))
				curbuf++;
		}
 
		public boolean hasNext() {
			skip();
			return hasNextByte();
		}
 
		public String next() {
			if (!hasNext())
				throw new NoSuchElementException();
			StringBuilder sb = new StringBuilder();
			int b = readByte();
			while (!isSpaceChar(b)) {
				sb.appendCodePoint(b);
				b = readByte();
			}
			return sb.toString();
		}
 
		public int nextInt() {
			if (!hasNext())
				throw new NoSuchElementException();
			int c = readByte();
			while (isSpaceChar(c))
				c = readByte();
			boolean minus = false;
			if (c == '-') {
				minus = true;
				c = readByte();
			}
			int res = 0;
			do {
				if (c < '0' || c > '9')
					throw new InputMismatchException();
				res = res * 10 + c - '0';
				c = readByte();
			} while (!isSpaceChar(c));
			return (minus) ? -res : res;
		}
 
		public long nextLong() {
			if (!hasNext())
				throw new NoSuchElementException();
			int c = readByte();
			while (isSpaceChar(c))
				c = readByte();
			boolean minus = false;
			if (c == '-') {
				minus = true;
				c = readByte();
			}
			long res = 0;
			do {
				if (c < '0' || c > '9')
					throw new InputMismatchException();
				res = res * 10 + c - '0';
				c = readByte();
			} while (!isSpaceChar(c));
			return (minus) ? -res : res;
		}
 
		public double nextDouble() {
			return Double.parseDouble(next());
		}
 
		public int[] nextIntArray(int n) {
			int[] a = new int[n];
			for (int i = 0; i < n; i++)
				a[i] = nextInt();
			return a;
		}
 
		public long[] nextLongArray(int n) {
			long[] a = new long[n];
			for (int i = 0; i < n; i++)
				a[i] = nextLong();
			return a;
		}
 
		public char[][] nextCharMap(int n, int m) {
			char[][] map = new char[n][m];
			for (int i = 0; i < n; i++)
				map[i] = next().toCharArray();
			return map;
		}
	}
}

Submission

Task問題 C - AtCoderプログラミング講座
User nameユーザ名 bouperson
Created time投稿日時
Language言語 Java8 (OpenJDK 1.8.0)
Status状態 AC
Score得点 100
Source lengthソースコード長 3300 Byte
File nameファイル名
Exec time実行時間 75 ms
Memory usageメモリ使用量 23124 KB

Test case

Set

Set name Score得点 / Max score Cases
All 100 / 100 00_sample_01.txt,00_sample_02.txt,00_sample_03.txt,00_sample_04.txt,test_01.txt,test_02.txt,test_03.txt,test_04.txt,test_05.txt,test_06.txt,test_07.txt,test_08.txt,test_09.txt,test_10.txt,test_11.txt,test_12.txt,test_13.txt,test_14.txt,test_15.txt,test_16.txt,test_17.txt,test_18.txt,test_19.txt,test_20.txt,test_21.txt,test_22.txt,test_23.txt,test_24.txt,test_25.txt,test_26.txt,test_27.txt,test_28.txt,test_29.txt,test_30.txt

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
00_sample_01.txt AC 73 ms 20820 KB
00_sample_02.txt AC 70 ms 18260 KB
00_sample_03.txt AC 72 ms 21076 KB
00_sample_04.txt AC 71 ms 18900 KB
test_01.txt AC 69 ms 19284 KB
test_02.txt AC 74 ms 21328 KB
test_03.txt AC 72 ms 19284 KB
test_04.txt AC 75 ms 23124 KB
test_05.txt AC 75 ms 19156 KB
test_06.txt AC 71 ms 17364 KB
test_07.txt AC 73 ms 20692 KB
test_08.txt AC 71 ms 17876 KB
test_09.txt AC 73 ms 18004 KB
test_10.txt AC 74 ms 20564 KB
test_11.txt AC 74 ms 21204 KB
test_12.txt AC 73 ms 19284 KB
test_13.txt AC 74 ms 18772 KB
test_14.txt AC 72 ms 20052 KB
test_15.txt AC 73 ms 17236 KB
test_16.txt AC 73 ms 21204 KB
test_17.txt AC 73 ms 18516 KB
test_18.txt AC 72 ms 21332 KB
test_19.txt AC 72 ms 18772 KB
test_20.txt AC 73 ms 18644 KB
test_21.txt AC 73 ms 18900 KB
test_22.txt AC 73 ms 18388 KB
test_23.txt AC 71 ms 18516 KB
test_24.txt AC 70 ms 17492 KB
test_25.txt AC 74 ms 21076 KB
test_26.txt AC 73 ms 22868 KB
test_27.txt AC 74 ms 18644 KB
test_28.txt AC 70 ms 17876 KB
test_29.txt AC 71 ms 21332 KB
test_30.txt AC 73 ms 18900 KB