goo blog サービス終了のお知らせ 

パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

dartで挑戦 471-480

2018-07-26 | プログラムをマスター計画2020
dartも情報がぜんぜんない。そして2012年頃の少し古い情報だと仕様変更していて動かない。
かなり難しい。さらに最新はdart2。

Javaで解いているのと変わらないのは気のせい?

//7で割り切れて割った値が奇数

import 'dart:io';
import 'dart:math';

void main() {
    int N = int.parse(stdin.readLineSync());
    if (N%7==0 && (N/7)%2==1){
        print('true');
    }else{
        print('false');
    }    

}


//値が2の何条か-1か判定

import 'dart:io';
import 'dart:math';

void main() {
    int n = int.parse(stdin.readLineSync());

    String a="false";

    for (int i=1;20>i;i++){
        if (pow(2,i)-1==n){
            a="true";
            break;
        }    
    }    
    print(a);
}


//降順でソートがわからないので

import 'dart:io';
import 'dart:math';

void main() {
    List<int> nums=[];
    int N = int.parse(stdin.readLineSync());
    for (int i = 0; N > i; i++) {
        int X = int.parse(stdin.readLineSync());
        nums.add(X);
    }

    nums.sort();
    String o="";
    for (var elem in nums) {
        o=elem.toString()+" "+o;
    }
    print(o.substring(0,o.length-1));
}

#Rubyだとこんなに短い
gets
puts $<.map(&:to_i).sort.reverse*' '


//数値変換が結局できなかった例
import 'dart:io';
import 'dart:math';

void main() {
    String d = stdin.readLineSync();

    int h=d.substring(0,2).toInt();
    int m=d.substring(3,5).toInt();

    print(h*60+m);
}


//数字のボックスがあってその外側だけたす
import 'dart:io';
import 'dart:math';

void main() {
    int N = int.parse(stdin.readLineSync());
    int a=0;
    for (int i = 0; N > i; i++) {
        //String line = stdin.readLineSync();
        List inputs = stdin.readLineSync().split(' ');
        for (int j = 0; N > j; j++) {
            if (i==0 || i==N-1 || j==0 || j==N-1){
                a=a+int.parse(inputs[j]);
            }
        }
    }
    print(a);
}


//新しいパターン答えから問題を探す感じ
import 'dart:io';
import 'dart:math';

void main() {
    int sum = int.parse(stdin.readLineSync());
    int difference = int.parse(stdin.readLineSync());

    for (int i=-100;100>i;i++){
        int b=sum-i;
        if (i-b==difference){
            if (i>b){
                print(b);
                print(i);
            }else{    
                print(i);
                print(b);
            };
            break;
        }            
    }


//数値をバイナリにしてその1 0を反転させた値 バイナリにできなかったので別のアプローチ
import 'dart:io';
import 'dart:math';

void main() {
    int n = int.parse(stdin.readLineSync());
    
    int a=2;
    for (int i=0;40>i;i++){
        if (a>n){
            break;
        }    
        a=a*2;
    }    
    //String bin = Integer.toBinaryString(n);xx

    print(a-1-n);
}


//労働状況が均等なチームを探す
import 'dart:io';
import 'dart:math';

void main() {
    List inputs;
    int N = int.parse(stdin.readLineSync());
    int M = int.parse(stdin.readLineSync());
    double bestV=100000.0;
    int bestTeam=-1;
    for (int i = 0; N > i; i++) {
        inputs = stdin.readLineSync().split(' ');
        double a=0.0;
        for (int j = 0; M > j; j++) {
            a=a+int.parse(inputs[j]);
        }
        a=a/M;
        double v=0.0;
        for (int j = 0; M > j; j++) {
            v=v+pow((int.parse(inputs[j])-a),2);
        }
        if (bestV>v){
            bestV=v;
            bestTeam=i+1;
        }    
    }
    print(bestTeam);
}


//同じ文字が登場すると一つずつ長くなるピノキオのような謎の問題。まったく解けませんでした。
import 'dart:io';
import 'dart:math';

void main() {
    String X = stdin.readLineSync();

    String O;
    //for (int i = 0; X.length > i; i++){
    //    O=O+X.substring(i, i+1);
    //}

    print(X);
}


//#で□をつくる
import 'dart:io';
import 'dart:math';

void main() {
    int N = int.parse(stdin.readLineSync());
    
    print("#"*N);
    for (int i=0;N-2>i;i++){
        print("#"+" "*(N-2)+"#");
    }
    if (N>1){
        print("#"*N);
    }
}



最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。