[過去ログ] Rust part24 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
72: デフォルトの名無しさん [sage] 2024/06/08(土) 11:35:42.10 ID:91vCCt9S(1/2) AAS
>>63
63(1): デフォルトの名無しさん [sage] 2024/06/08(土) 04:40:43.01 ID:j2N7L69L(1) AAS
Option<String>型のxがある時に
x.as_ref()とするとOption<&String>が得られ
x.as_deref()とするとOption<&str>が得られることがわかりました

Option<&String>型のyがある時に
y.as_deref()としてもOption<&String>のままになりました
yからOption<&str>を得るにはどうすればいいのでしょうか?
y.map(|s| s.as_str())
or
y.map(String::as_str)
176: デフォルトの名無しさん [sage] 2024/06/16(日) 01:32:46.10 ID:dwkxcYMW(2/22) AAS
C言語と違って区別しないわけじゃないし、C言語と違って高速ってわけでもない
188: デフォルトの名無しさん [sage] 2024/06/16(日) 07:56:02.10 ID:dwkxcYMW(8/22) AAS
この発想は正直なかったわ
ひとつのメモリをあちこちから参照すればするほど高効率みたいな思い込みがあるからね
199
(1): デフォルトの名無しさん [sage] 2024/06/16(日) 12:23:11.10 ID:dwkxcYMW(13/22) AAS
ええっと、メモリの所有者が
・スコープを抜けること
・別の値が代入されること
・別の変数に所有権を移動させること
はもともと検出できる前提なのだよね
ボローチェッカーと言ってもその3つの組み合わせに毛が生えた程度なのかどうか
340
(1): デフォルトの名無しさん [sage] 2024/06/24(月) 18:44:46.10 ID:jX1oxSab(5/5) AAS
一般的には、次のように書けると思うわ:
a=2*(x-2)(x-3)+1*(x-1)(x-3)+3*(x-1)(x-2);
b=(x-2)(x-3)+(x-1)(x-3)+(x-1)(x-2);
y=a/b;
341: デフォルトの名無しさん [sage] 2024/06/24(月) 19:35:34.10 ID:maSlaTHT(1) AAS
>>340
合っているかどうか以前に
プログラムコードで回答しないとスレ違い
具体的な数値例が式やコードに含まれるのは望ましくない
出来上がった関数の動作検算の時に具体的な数値例を用いる
346
(1): デフォルトの名無しさん [sage] 2024/06/25(火) 05:16:25.10 ID:6VG6SXsU(1) AAS
>>342
342(2): デフォルトの名無しさん [sage] 2024/06/24(月) 23:33:41.46 ID:FIb4AZ4T(1/2) AAS
>>328-329
なんかダサい
外部リンク:paiza.io
pub fn f(x: i32) -> i32 {
(
-2413f64*(x.pow(6) as f64)/120960f64
+739f64*(x.pow(5) as f64)/1260f64
-157991f64*(x.pow(4) as f64)/24192f64
+69551f64*(x.pow(3) as f64)/2016f64
-2691673f64*(x.pow(2) as f64)/30240f64
+88679f64*(x as f64)/840f64
-905f64/21f64
+0.5)
as i32
}
pub fn g(y: i32) -> i32 {
(
13f64*(y.pow(6) as f64)/120960f64
-(y.pow(5) as f64)/315f64
+1415f64*(y.pow(4) as f64)/24192f64
-1511f64*(y.pow(3) as f64)/2016f64
+144793f64*(y.pow(2) as f64)/30240f64
-3053f64*(y as f64)/280f64
+185f64/21f64
+0.5)
as i32
}
pub fn main() {
let a = vec![(1, 2), (2, 1), (3, 3), (4, 10), (6, 4), (8, 8), (10, 6)];
for (x, _y) in &a { println!("{}, {}", x, f(*x)); }
for (_x, y) in &a { println!("{}, {}", y, g(*y)); }
}
6次式を使う場合それを展開することに意味があると思えないから展開前の>>336
336(2): デフォルトの名無しさん [sage] 2024/06/24(月) 17:42:58.06 ID:Uuc2YNAP(1/2) AAS
>>328
const INPUT: &str = "
1→2
2→1
3→3
4→10
6→4
8→8
10→6
";

fn parse(s: &str) -> Vec<(i32, i32)> {
 s.lines().filter_map(|line| {
  line.split('→')
   .map(str::parse::<i32>)
   .collect::<Result<Vec<_ _>>()
   .ok()
   .and_then(|v| (v.len() == 2).then(|| (v[0], v[1])))
 })
 .collect::<Vec<_>>()
}

fn make_f(v: &[(i32, i32)]) -> impl Fn(i32) -> i32 + '_ {
 move |x| {
  v.iter().enumerate().map(|(i, (in1, out))| {
   v.iter().enumerate().filter_map(|(j, (in2, _))| (i != j).then(|| x - in2)).product::<i32>() /
   v.iter().enumerate().filter_map(|(j, (in2, _))| (i != j).then(|| in1 - in2)).product::<i32>() * out
  })
  .sum()
 }
}
でいいんじゃない?
441
(3): デフォルトの名無しさん [] 2024/06/28(金) 09:41:44.10 ID:RD8xbJnt(1) AAS
型がガチガチの言語でdeepnetの実装するのは面倒な割に生産性薄いわ
568: デフォルトの名無しさん [sage] 2024/07/02(火) 18:34:46.10 ID:0AnHLV8o(2/2) AAS
>>565
565(1): デフォルトの名無しさん [] 2024/07/02(火) 17:51:34.66 ID:XMmeU2jA(1) AAS
Slint ってなんなん? javascript ?
conrod とどう違うん?
SlintはGUI部分だけ専用スクリプトで宣言して
プログラムはRustでもC++でもJavaScriptでも記述できる
847
(1): デフォルトの名無しさん [] 2024/07/14(日) 09:23:36.10 ID:JssLuzWj(1/4) AAS
fold って next とどうちがうん
874
(1): デフォルトの名無しさん [sage] 2024/07/15(月) 13:14:40.10 ID:ZO/EZAih(1) AAS
単に好みの問題だけど
ウィルスっぽくて気持ち悪い
好きじゃない
929: デフォルトの名無しさん [sage] 2024/07/21(日) 22:30:45.10 ID:kEjkNYpd(2/2) AAS
>>928
928(1): デフォルトの名無しさん [sage] 2024/07/21(日) 22:23:54.17 ID:vNf5wQaP(1) AAS
>>927
HashMap::from_iter(xs)で十分じゃね
error[E0283]: type annotations needed for `HashMap<i32, &str, _>`
--> src/main.rs:5:9
|
5 | let map = HashMap::from_iter(xs);
| ^^^ ------- type must be known at this point
|
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s