結果
問題 | No.91 赤、緑、青の石 |
ユーザー |
|
提出日時 | 2014-12-07 22:43:48 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 57 ms / 5,000 ms |
コード長 | 1,657 bytes |
コンパイル時間 | 3,916 ms |
コンパイル使用メモリ | 78,116 KB |
実行使用メモリ | 50,432 KB |
最終ジャッジ日時 | 2024-06-24 06:45:39 |
合計ジャッジ時間 | 6,514 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 28 |
ソースコード
import java.util.*;import java.lang.Math.*;public class ppp {public static void main(String[] args) {MyScanner sc=new MyScanner();int r=sc.nextInt();int g=sc.nextInt();int b=sc.nextInt();int c[]={r,g,b};int ans=0;Arrays.sort(c);ans+=c[0];c[2]-=c[0];c[1]-=c[0];c[0]-=c[0];int x=Math.min(c[1],(c[2]-c[1])/2);ans+=x;c[2]-=x*3;c[1]-=x;while(c[2]>2){if(c[1]==0){ans+=c[2]/5;break;}else if(c[1]>3){int L=c[1]/4;ans+=L*2;c[1]-=L*4;c[2]-=L*4;}else{c[2]-=2;c[0]++;Arrays.sort(c);if(c[0]>0){ans+=c[0];c[2]-=c[0];c[1]-=c[0];c[0]=0;}}}System.out.println(ans);}}class MyScanner {int nextInt() {try {int c = System.in.read();while (c != '-' && (c < '0' || '9' < c))c = System.in.read();if (c == '-')return -nextInt();int res = 0;do {res *= 10;res += c - '0';c = System.in.read();} while ('0' <= c && c <= '9');return res;} catch (Exception e) {return -1;}}double nextDouble() {return Double.parseDouble(next());}long nextLong() {return Long.parseLong(next());}String next() {try {StringBuilder res = new StringBuilder("");int c = System.in.read();while (Character.isWhitespace(c))c = System.in.read();do {res.append((char) c);} while (!Character.isWhitespace(c = System.in.read()));return res.toString();} catch (Exception e) {return null;}}}